<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Interactive BOM for KiCAD</title>
  <style type="text/css">
:root {
  --pcb-edge-color: black;
  --pad-color: #878787;
  --pad-hole-color: #CCCCCC;
  --pad-color-highlight: #D04040;
  --pad-color-highlight-both: #D0D040;
  --pad-color-highlight-marked: #44a344;
  --pin1-outline-color: #ffb629;
  --pin1-outline-color-highlight: #ffb629;
  --pin1-outline-color-highlight-both: #fcbb39;
  --pin1-outline-color-highlight-marked: #fdbe41;
  --silkscreen-edge-color: #aa4;
  --silkscreen-polygon-color: #4aa;
  --silkscreen-text-color: #4aa;
  --fabrication-edge-color: #907651;
  --fabrication-polygon-color: #907651;
  --fabrication-text-color: #a27c24;
  --track-color: #def5f1;
  --track-color-highlight: #D04040;
  --zone-color: #def5f1;
  --zone-color-highlight: #d0404080;
}

html,
body {
  margin: 0px;
  height: 100%;
  font-family: Verdana, sans-serif;
}

.dark.topmostdiv {
  --pcb-edge-color: #eee;
  --pad-color: #808080;
  --pin1-outline-color: #ffa800;
  --pin1-outline-color-highlight: #ccff00;
  --track-color: #42524f;
  --zone-color: #42524f;
  background-color: #252c30;
  color: #eee;
}

button {
  background-color: #eee;
  border: 1px solid #888;
  color: black;
  height: 44px;
  width: 44px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 14px;
  font-weight: bolder;
}

.dark button {
  /* This will be inverted */
  background-color: #c3b7b5;
}

button.depressed {
  background-color: #0a0;
  color: white;
}

.dark button.depressed {
  /* This will be inverted */
  background-color: #b3b;
}

button:focus {
  outline: 0;
}

button#tb-btn {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.47 8.47'%3E%3Crect transform='translate(0 -288.53)' ry='1.17' y='288.8' x='.27' height='7.94' width='7.94' fill='%23f9f9f9'/%3E%3Cg transform='translate(0 -288.53)'%3E%3Crect width='7.94' height='7.94' x='.27' y='288.8' ry='1.17' fill='none' stroke='%23000' stroke-width='.4' stroke-linejoin='round'/%3E%3Cpath d='M1.32 290.12h5.82M1.32 291.45h5.82' fill='none' stroke='%23000' stroke-width='.4'/%3E%3Cpath d='M4.37 292.5v4.23M.26 292.63H8.2' fill='none' stroke='%23000' stroke-width='.3'/%3E%3Ctext font-weight='700' font-size='3.17' font-family='sans-serif'%3E%3Ctspan x='1.35' y='295.73'%3EF%3C/tspan%3E%3Ctspan x='5.03' y='295.68'%3EB%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E%0A");
}

button#lr-btn {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.47 8.47'%3E%3Crect transform='translate(0 -288.53)' ry='1.17' y='288.8' x='.27' height='7.94' width='7.94' fill='%23f9f9f9'/%3E%3Cg transform='translate(0 -288.53)'%3E%3Crect width='7.94' height='7.94' x='.27' y='288.8' ry='1.17' fill='none' stroke='%23000' stroke-width='.4' stroke-linejoin='round'/%3E%3Cpath d='M1.06 290.12H3.7m-2.64 1.33H3.7m-2.64 1.32H3.7m-2.64 1.3H3.7m-2.64 1.33H3.7' fill='none' stroke='%23000' stroke-width='.4'/%3E%3Cpath d='M4.37 288.8v7.94m0-4.11h3.96' fill='none' stroke='%23000' stroke-width='.3'/%3E%3Ctext font-weight='700' font-size='3.17' font-family='sans-serif'%3E%3Ctspan x='5.11' y='291.96'%3EF%3C/tspan%3E%3Ctspan x='5.03' y='295.68'%3EB%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E%0A");
}

button#bom-btn {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.47 8.47'%3E%3Crect transform='translate(0 -288.53)' ry='1.17' y='288.8' x='.27' height='7.94' width='7.94' fill='%23f9f9f9'/%3E%3Cg transform='translate(0 -288.53)' fill='none' stroke='%23000' stroke-width='.4'%3E%3Crect width='7.94' height='7.94' x='.27' y='288.8' ry='1.17' stroke-linejoin='round'/%3E%3Cpath d='M1.59 290.12h5.29M1.59 291.45h5.33M1.59 292.75h5.33M1.59 294.09h5.33M1.59 295.41h5.33'/%3E%3C/g%3E%3C/svg%3E");
}

button#bom-grouped-btn {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cg stroke='%23000' stroke-linejoin='round' class='layer'%3E%3Crect width='29' height='29' x='1.5' y='1.5' stroke-width='2' fill='%23fff' rx='5' ry='5'/%3E%3Cpath stroke-linecap='square' stroke-width='2' d='M6 10h4m4 0h5m4 0h3M6.1 22h3m3.9 0h5m4 0h4m-16-8h4m4 0h4'/%3E%3Cpath stroke-linecap='null' d='M5 17.5h22M5 26.6h22M5 5.5h22'/%3E%3C/g%3E%3C/svg%3E");
}

button#bom-ungrouped-btn {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cg stroke='%23000' stroke-linejoin='round' class='layer'%3E%3Crect width='29' height='29' x='1.5' y='1.5' stroke-width='2' fill='%23fff' rx='5' ry='5'/%3E%3Cpath stroke-linecap='square' stroke-width='2' d='M6 10h4m-4 8h3m-3 8h4'/%3E%3Cpath stroke-linecap='null' d='M5 13.5h22m-22 8h22M5 5.5h22'/%3E%3C/g%3E%3C/svg%3E");
}

button#bom-netlist-btn {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cg fill='none' stroke='%23000' class='layer'%3E%3Crect width='29' height='29' x='1.5' y='1.5' stroke-width='2' fill='%23fff' rx='5' ry='5'/%3E%3Cpath stroke-width='2' d='M6 26l6-6v-8m13.8-6.3l-6 6v8'/%3E%3Ccircle cx='11.8' cy='9.5' r='2.8' stroke-width='2'/%3E%3Ccircle cx='19.8' cy='22.8' r='2.8' stroke-width='2'/%3E%3C/g%3E%3C/svg%3E");
}

button#copy {
  background-image: url("data:image/svg+xml,%3Csvg height='48' viewBox='0 0 48 48' width='48' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h48v48h-48z' fill='none'/%3E%3Cpath d='M32 2h-24c-2.21 0-4 1.79-4 4v28h4v-28h24v-4zm6 8h-22c-2.21 0-4 1.79-4 4v28c0 2.21 1.79 4 4 4h22c2.21 0 4-1.79 4-4v-28c0-2.21-1.79-4-4-4zm0 32h-22v-28h22v28z'/%3E%3C/svg%3E");
  background-position: 6px 6px;
  background-repeat: no-repeat;
  background-size: 26px 26px;
  border-radius: 6px;
  height: 40px;
  width: 40px;
  margin: 10px 5px;
}

button#copy:active {
  box-shadow: inset 0px 0px 5px #6c6c6c;
}

textarea.clipboard-temp {
  position: fixed;
  top: 0;
  left: 0;
  width: 2em;
  height: 2em;
  padding: 0;
  border: None;
  outline: None;
  box-shadow: None;
  background: transparent;
}

.left-most-button {
  border-right: 0;
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
}

.middle-button {
  border-right: 0;
}

.right-most-button {
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
}

.button-container {
  font-size: 0;
  margin: 10px 10px 10px 0px;
}

.dark .button-container {
  filter: invert(1);
}

.button-container button {
  background-size: 32px 32px;
  background-position: 5px 5px;
  background-repeat: no-repeat;
}

@media print {
  .hideonprint {
    display: none;
  }
}

canvas {
  cursor: crosshair;
}

canvas:active {
  cursor: grabbing;
}

.fileinfo {
  width: 100%;
  max-width: 1000px;
  border: none;
  padding: 5px;
}

.fileinfo .title {
  font-size: 20pt;
  font-weight: bold;
}

.fileinfo td {
  overflow: hidden;
  white-space: nowrap;
  max-width: 1px;
  width: 50%;
  text-overflow: ellipsis;
}

.bom {
  border-collapse: collapse;
  font-family: Consolas, "DejaVu Sans Mono", Monaco, monospace;
  font-size: 10pt;
  table-layout: fixed;
  width: 100%;
  margin-top: 1px;
  position: relative;
}

.bom th,
.bom td {
  border: 1px solid black;
  padding: 5px;
  word-wrap: break-word;
  text-align: center;
  position: relative;
}

.dark .bom th,
.dark .bom td {
  border: 1px solid #777;
}

.bom th {
  background-color: #CCCCCC;
  background-clip: padding-box;
}

.dark .bom th {
  background-color: #3b4749;
}

.bom tr.highlighted:nth-child(n) {
  background-color: #cfc;
}

.dark .bom tr.highlighted:nth-child(n) {
  background-color: #226022;
}

.bom tr:nth-child(even) {
  background-color: #f2f2f2;
}

.dark .bom tr:nth-child(even) {
  background-color: #313b40;
}

.bom tr.checked {
  color: #1cb53d;
}

.dark .bom tr.checked {
  color: #2cce54;
}

.bom tr {
  transition: background-color 0.2s;
}

.bom .numCol {
  width: 30px;
}

.bom .value {
  width: 15%;
}

.bom .quantity {
  width: 65px;
}

.bom th .sortmark {
  position: absolute;
  right: 1px;
  top: 1px;
  margin-top: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent #221 transparent;
  transform-origin: 50% 85%;
  transition: opacity 0.2s, transform 0.4s;
}

.dark .bom th .sortmark {
  filter: invert(1);
}

.bom th .sortmark.none {
  opacity: 0;
}

.bom th .sortmark.desc {
  transform: rotate(180deg);
}

.bom th:hover .sortmark.none {
  opacity: 0.5;
}

.bom .bom-checkbox {
  width: 30px;
  position: relative;
  user-select: none;
  -moz-user-select: none;
}

.bom .bom-checkbox:before {
  content: "";
  position: absolute;
  border-width: 15px;
  border-style: solid;
  border-color: #51829f transparent transparent transparent;
  visibility: hidden;
  top: -15px;
}

.bom .bom-checkbox:after {
  content: "Double click to set/unset all";
  position: absolute;
  color: white;
  top: -35px;
  left: -26px;
  background: #51829f;
  padding: 5px 15px;
  border-radius: 8px;
  white-space: nowrap;
  visibility: hidden;
}

.bom .bom-checkbox:hover:before,
.bom .bom-checkbox:hover:after {
  visibility: visible;
  transition: visibility 0.2s linear 1s;
}

.split {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow-y: auto;
  overflow-x: hidden;
  background-color: inherit;
}

.split.split-horizontal,
.gutter.gutter-horizontal {
  height: 100%;
  float: left;
}

.gutter {
  background-color: #ddd;
  background-repeat: no-repeat;
  background-position: 50%;
  transition: background-color 0.3s;
}

.dark .gutter {
  background-color: #777;
}

.gutter.gutter-horizontal {
  background-image: url('');
  cursor: ew-resize;
  width: 5px;
}

.gutter.gutter-vertical {
  background-image: url('');
  cursor: ns-resize;
  height: 5px;
}

.searchbox {
  float: left;
  height: 40px;
  margin: 10px 5px;
  padding: 12px 32px;
  font-family: Consolas, "DejaVu Sans Mono", Monaco, monospace;
  font-size: 18px;
  box-sizing: border-box;
  border: 1px solid #888;
  border-radius: 6px;
  outline: none;
  background-color: #eee;
  transition: background-color 0.2s, border 0.2s;
  background-image: url('');
  background-position: 10px 10px;
  background-repeat: no-repeat;
}

.dark .searchbox {
  background-color: #111;
  color: #eee;
}

.searchbox::placeholder {
  color: #ccc;
}

.dark .searchbox::placeholder {
  color: #666;
}

.filter {
  width: calc(60% - 64px);
}

.reflookup {
  width: calc(40% - 10px);
}

input[type=text]:focus {
  background-color: white;
  border: 1px solid #333;
}

.dark input[type=text]:focus {
  background-color: #333;
  border: 1px solid #ccc;
}

mark.highlight {
  background-color: #5050ff;
  color: #fff;
  padding: 2px;
  border-radius: 6px;
}

.dark mark.highlight {
  background-color: #76a6da;
  color: #111;
}

.menubtn {
  background-color: white;
  border: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 20 20'%3E%3Cpath fill='none' d='M0 0h20v20H0V0z'/%3E%3Cpath d='M15.95 10.78c.03-.25.05-.51.05-.78s-.02-.53-.06-.78l1.69-1.32c.15-.12.19-.34.1-.51l-1.6-2.77c-.1-.18-.31-.24-.49-.18l-1.99.8c-.42-.32-.86-.58-1.35-.78L12 2.34c-.03-.2-.2-.34-.4-.34H8.4c-.2 0-.36.14-.39.34l-.3 2.12c-.49.2-.94.47-1.35.78l-1.99-.8c-.18-.07-.39 0-.49.18l-1.6 2.77c-.1.18-.06.39.1.51l1.69 1.32c-.04.25-.07.52-.07.78s.02.53.06.78L2.37 12.1c-.15.12-.19.34-.1.51l1.6 2.77c.1.18.31.24.49.18l1.99-.8c.42.32.86.58 1.35.78l.3 2.12c.04.2.2.34.4.34h3.2c.2 0 .37-.14.39-.34l.3-2.12c.49-.2.94-.47 1.35-.78l1.99.8c.18.07.39 0 .49-.18l1.6-2.77c.1-.18.06-.39-.1-.51l-1.67-1.32zM10 13c-1.65 0-3-1.35-3-3s1.35-3 3-3 3 1.35 3 3-1.35 3-3 3z'/%3E%3C/svg%3E%0A");
  background-position: center;
  background-repeat: no-repeat;
}

.statsbtn {
  background-color: white;
  border: none;
  background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6h28v24H4V6zm0 8h28v8H4m9-16v24h10V5.8' fill='none' stroke='%23000' stroke-width='2'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
}

.iobtn {
  background-color: white;
  border: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M3 33v-7l6.8-7h16.5l6.7 7v7H3zM3.2 26H33M21 9l5-5.9 5 6h-2.5V15h-5V9H21zm-4.9 0l-5 6-5-6h2.5V3h5v6h2.5z'/%3E%3Cpath fill='none' stroke='%23000' d='M6.1 29.5H10'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
}

.visbtn {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Cpath fill='none' stroke='%23333' d='M2.5 4.5h5v15h-5zM9.5 4.5h5v15h-5zM16.5 4.5h5v15h-5z'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  padding: 15px;
}

#vismenu-content {
  left: 0px;
  font-family: Verdana, sans-serif;
}

.dark .statsbtn,
.dark .savebtn,
.dark .menubtn,
.dark .iobtn,
.dark .visbtn {
  filter: invert(1);
}

.flexbox {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.savebtn {
  background-color: #d6d6d6;
  width: auto;
  height: 30px;
  flex-grow: 1;
  margin: 5px;
  border-radius: 4px;
}

.savebtn:active {
  background-color: #0a0;
  color: white;
}

.dark .savebtn:active {
  /* This will be inverted */
  background-color: #b3b;
}

.stats {
  border-collapse: collapse;
  font-size: 12pt;
  table-layout: fixed;
  width: 100%;
  min-width: 450px;
}

.dark .stats td {
  border: 1px solid #bbb;
}

.stats td {
  border: 1px solid black;
  padding: 5px;
  word-wrap: break-word;
  text-align: center;
  position: relative;
}

#checkbox-stats div {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

#checkbox-stats .bar {
  background-color: rgba(28, 251, 0, 0.6);
}

.menu {
  position: relative;
  display: inline-block;
  margin: 10px 10px 10px 0px;
}

.menu-content {
  font-size: 12pt !important;
  text-align: left !important;
  font-weight: normal !important;
  display: none;
  position: absolute;
  background-color: white;
  right: 0;
  min-width: 300px;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  z-index: 100;
  padding: 8px;
}

.dark .menu-content {
  background-color: #111;
}

.menu:hover .menu-content {
  display: block;
}

.menu:hover .menubtn,
.menu:hover .iobtn,
.menu:hover .statsbtn {
  background-color: #eee;
}

.menu-label {
  display: inline-block;
  padding: 8px;
  border: 1px solid #ccc;
  border-top: 0;
  width: calc(100% - 18px);
}

.menu-label-top {
  border-top: 1px solid #ccc;
}

.menu-textbox {
  float: left;
  height: 24px;
  margin: 10px 5px;
  padding: 5px 5px;
  font-family: Consolas, "DejaVu Sans Mono", Monaco, monospace;
  font-size: 14px;
  box-sizing: border-box;
  border: 1px solid #888;
  border-radius: 4px;
  outline: none;
  background-color: #eee;
  transition: background-color 0.2s, border 0.2s;
  width: calc(100% - 10px);
}

.menu-textbox.invalid,
.dark .menu-textbox.invalid {
  color: red;
}

.dark .menu-textbox {
  background-color: #222;
  color: #eee;
}

.radio-container {
  margin: 4px;
}

.topmostdiv {
  width: 100%;
  height: 100%;
  background-color: white;
  transition: background-color 0.3s;
}

#top {
  height: 78px;
  border-bottom: 2px solid black;
}

.dark #top {
  border-bottom: 2px solid #ccc;
}

#dbg {
  display: block;
}

::-webkit-scrollbar {
  width: 8px;
}

::-webkit-scrollbar-track {
  background: #aaa;
}

::-webkit-scrollbar-thumb {
  background: #666;
  border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
  background: #555;
}

.slider {
  -webkit-appearance: none;
  width: 100%;
  margin: 3px 0;
  padding: 0;
  outline: none;
  opacity: 0.7;
  -webkit-transition: .2s;
  transition: opacity .2s;
  border-radius: 3px;
}

.slider:hover {
  opacity: 1;
}

.slider:focus {
  outline: none;
}

.slider::-webkit-slider-runnable-track {
  -webkit-appearance: none;
  width: 100%;
  height: 8px;
  background: #d3d3d3;
  border-radius: 3px;
  border: none;
}

.slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: #0a0;
  cursor: pointer;
  margin-top: -4px;
}

.dark .slider::-webkit-slider-thumb {
  background: #3d3;
}

.slider::-moz-range-thumb {
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: #0a0;
  cursor: pointer;
}

.slider::-moz-range-track {
  height: 8px;
  background: #d3d3d3;
  border-radius: 3px;
}

.dark .slider::-moz-range-thumb {
  background: #3d3;
}

.slider::-ms-track {
  width: 100%;
  height: 8px;
  border-width: 3px 0;
  background: transparent;
  border-color: transparent;
  color: transparent;
  transition: opacity .2s;
}

.slider::-ms-fill-lower {
  background: #d3d3d3;
  border: none;
  border-radius: 3px;
}

.slider::-ms-fill-upper {
  background: #d3d3d3;
  border: none;
  border-radius: 3px;
}

.slider::-ms-thumb {
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: #0a0;
  cursor: pointer;
  margin: 0;
}

.shameless-plug {
  font-size: 0.8em;
  text-align: center;
  display: block;
}

a {
  color: #0278a4;
}

.dark a {
  color: #00b9fd;
}

#frontcanvas,
#backcanvas {
  touch-action: none;
}

.placeholder {
  border: 1px dashed #9f9fda !important;
  background-color: #edf2f7 !important;
}

.dragging {
  z-index: 999;
}

.dark .dragging>table>tbody>tr {
  background-color: #252c30;
}

.dark .placeholder {
  filter: invert(1);
}

.column-spacer {
  top: 0;
  left: 0;
  width: calc(100% - 4px);
  position: absolute;
  cursor: pointer;
  user-select: none;
  height: 100%;
}

.column-width-handle {
  top: 0;
  right: 0;
  width: 4px;
  position: absolute;
  cursor: col-resize;
  user-select: none;
  height: 100%;
}

.column-width-handle:hover {
  background-color: #4f99bd;
}


  </style>
  <script type="text/javascript" >
///////////////////////////////////////////////
/*
  Split.js - v1.3.5
  MIT License
  https://github.com/nathancahill/Split.js
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.Split=t()}(this,function(){"use strict";var e=window,t=e.document,n="addEventListener",i="removeEventListener",r="getBoundingClientRect",s=function(){return!1},o=e.attachEvent&&!e[n],a=["","-webkit-","-moz-","-o-"].filter(function(e){var n=t.createElement("div");return n.style.cssText="width:"+e+"calc(9px)",!!n.style.length}).shift()+"calc",l=function(e){return"string"==typeof e||e instanceof String?t.querySelector(e):e};return function(u,c){function z(e,t,n){var i=A(y,t,n);Object.keys(i).forEach(function(t){return e.style[t]=i[t]})}function h(e,t){var n=B(y,t);Object.keys(n).forEach(function(t){return e.style[t]=n[t]})}function f(e){var t=E[this.a],n=E[this.b],i=t.size+n.size;t.size=e/this.size*i,n.size=i-e/this.size*i,z(t.element,t.size,this.aGutterSize),z(n.element,n.size,this.bGutterSize)}function m(e){var t;this.dragging&&((t="touches"in e?e.touches[0][b]-this.start:e[b]-this.start)<=E[this.a].minSize+M+this.aGutterSize?t=E[this.a].minSize+this.aGutterSize:t>=this.size-(E[this.b].minSize+M+this.bGutterSize)&&(t=this.size-(E[this.b].minSize+this.bGutterSize)),f.call(this,t),c.onDrag&&c.onDrag())}function g(){var e=E[this.a].element,t=E[this.b].element;this.size=e[r]()[y]+t[r]()[y]+this.aGutterSize+this.bGutterSize,this.start=e[r]()[G]}function d(){var t=this,n=E[t.a].element,r=E[t.b].element;t.dragging&&c.onDragEnd&&c.onDragEnd(),t.dragging=!1,e[i]("mouseup",t.stop),e[i]("touchend",t.stop),e[i]("touchcancel",t.stop),t.parent[i]("mousemove",t.move),t.parent[i]("touchmove",t.move),delete t.stop,delete t.move,n[i]("selectstart",s),n[i]("dragstart",s),r[i]("selectstart",s),r[i]("dragstart",s),n.style.userSelect="",n.style.webkitUserSelect="",n.style.MozUserSelect="",n.style.pointerEvents="",r.style.userSelect="",r.style.webkitUserSelect="",r.style.MozUserSelect="",r.style.pointerEvents="",t.gutter.style.cursor="",t.parent.style.cursor=""}function S(t){var i=this,r=E[i.a].element,o=E[i.b].element;!i.dragging&&c.onDragStart&&c.onDragStart(),t.preventDefault(),i.dragging=!0,i.move=m.bind(i),i.stop=d.bind(i),e[n]("mouseup",i.stop),e[n]("touchend",i.stop),e[n]("touchcancel",i.stop),i.parent[n]("mousemove",i.move),i.parent[n]("touchmove",i.move),r[n]("selectstart",s),r[n]("dragstart",s),o[n]("selectstart",s),o[n]("dragstart",s),r.style.userSelect="none",r.style.webkitUserSelect="none",r.style.MozUserSelect="none",r.style.pointerEvents="none",o.style.userSelect="none",o.style.webkitUserSelect="none",o.style.MozUserSelect="none",o.style.pointerEvents="none",i.gutter.style.cursor=j,i.parent.style.cursor=j,g.call(i)}function v(e){e.forEach(function(t,n){if(n>0){var i=F[n-1],r=E[i.a],s=E[i.b];r.size=e[n-1],s.size=t,z(r.element,r.size,i.aGutterSize),z(s.element,s.size,i.bGutterSize)}})}function p(){F.forEach(function(e){e.parent.removeChild(e.gutter),E[e.a].element.style[y]="",E[e.b].element.style[y]=""})}void 0===c&&(c={});var y,b,G,E,w=l(u[0]).parentNode,D=e.getComputedStyle(w).flexDirection,U=c.sizes||u.map(function(){return 100/u.length}),k=void 0!==c.minSize?c.minSize:100,x=Array.isArray(k)?k:u.map(function(){return k}),L=void 0!==c.gutterSize?c.gutterSize:10,M=void 0!==c.snapOffset?c.snapOffset:30,O=c.direction||"horizontal",j=c.cursor||("horizontal"===O?"ew-resize":"ns-resize"),C=c.gutter||function(e,n){var i=t.createElement("div");return i.className="gutter gutter-"+n,i},A=c.elementStyle||function(e,t,n){var i={};return"string"==typeof t||t instanceof String?i[e]=t:i[e]=o?t+"%":a+"("+t+"% - "+n+"px)",i},B=c.gutterStyle||function(e,t){return n={},n[e]=t+"px",n;var n};"horizontal"===O?(y="width","clientWidth",b="clientX",G="left","paddingLeft"):"vertical"===O&&(y="height","clientHeight",b="clientY",G="top","paddingTop");var F=[];return E=u.map(function(e,t){var i,s={element:l(e),size:U[t],minSize:x[t]};if(t>0&&(i={a:t-1,b:t,dragging:!1,isFirst:1===t,isLast:t===u.length-1,direction:O,parent:w},i.aGutterSize=L,i.bGutterSize=L,i.isFirst&&(i.aGutterSize=L/2),i.isLast&&(i.bGutterSize=L/2),"row-reverse"===D||"column-reverse"===D)){var a=i.a;i.a=i.b,i.b=a}if(!o&&t>0){var c=C(t,O);h(c,L),c[n]("mousedown",S.bind(i)),c[n]("touchstart",S.bind(i)),w.insertBefore(c,s.element),i.gutter=c}0===t||t===u.length-1?z(s.element,s.size,L/2):z(s.element,s.size,L);var f=s.element[r]()[y];return f<s.minSize&&(s.minSize=f),t>0&&F.push(i),s}),o?{setSizes:v,destroy:p}:{setSizes:v,getSizes:function(){return E.map(function(e){return e.size})},collapse:function(e){if(e===F.length){var t=F[e-1];g.call(t),o||f.call(t,t.size-t.bGutterSize)}else{var n=F[e];g.call(n),o||f.call(n,n.aGutterSize)}},destroy:p}}});

///////////////////////////////////////////////

///////////////////////////////////////////////
// Copyright (c) 2013 Pieroxy <pieroxy@pieroxy.net>
// This work is free. You can redistribute it and/or modify it
// under the terms of the WTFPL, Version 2
// For more information see LICENSE.txt or http://www.wtfpl.net/
//
// For more information, the home page:
// http://pieroxy.net/blog/pages/lz-string/testing.html
//
// LZ-based compression algorithm, version 1.4.4
var LZString=function(){var o=String.fromCharCode,i={};var n={decompressFromBase64:function(o){return null==o?"":""==o?null:n._decompress(o.length,32,function(n){return function(o,n){if(!i[o]){i[o]={};for(var t=0;t<o.length;t++)i[o][o.charAt(t)]=t}return i[o][n]}("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",o.charAt(n))})},_decompress:function(i,n,t){var r,e,a,s,p,u,l,f=[],c=4,d=4,h=3,v="",g=[],m={val:t(0),position:n,index:1};for(r=0;r<3;r+=1)f[r]=r;for(a=0,p=Math.pow(2,2),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;switch(a){case 0:for(a=0,p=Math.pow(2,8),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;l=o(a);break;case 1:for(a=0,p=Math.pow(2,16),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;l=o(a);break;case 2:return""}for(f[3]=l,e=l,g.push(l);;){if(m.index>i)return"";for(a=0,p=Math.pow(2,h),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;switch(l=a){case 0:for(a=0,p=Math.pow(2,8),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;f[d++]=o(a),l=d-1,c--;break;case 1:for(a=0,p=Math.pow(2,16),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;f[d++]=o(a),l=d-1,c--;break;case 2:return g.join("")}if(0==c&&(c=Math.pow(2,h),h++),f[l])v=f[l];else{if(l!==d)return null;v=e+e.charAt(0)}g.push(v),f[d++]=e+v.charAt(0),e=v,0==--c&&(c=Math.pow(2,h),h++)}}};return n}();"function"==typeof define&&define.amd?define(function(){return LZString}):"undefined"!=typeof module&&null!=module?module.exports=LZString:"undefined"!=typeof angular&&null!=angular&&angular.module("LZString",[]).factory("LZString",function(){return LZString});
///////////////////////////////////////////////

///////////////////////////////////////////////
/*!
 * PEP v0.4.3 | https://github.com/jquery/PEP
 * Copyright jQuery Foundation and other contributors | http://jquery.org/license
 */
!function(a,b){"object"==typeof exports&&"undefined"!=typeof module?module.exports=b():"function"==typeof define&&define.amd?define(b):a.PointerEventsPolyfill=b()}(this,function(){"use strict";function a(a,b){b=b||Object.create(null);var c=document.createEvent("Event");c.initEvent(a,b.bubbles||!1,b.cancelable||!1);
for(var d,e=2;e<m.length;e++)d=m[e],c[d]=b[d]||n[e];c.buttons=b.buttons||0;
var f=0;return f=b.pressure&&c.buttons?b.pressure:c.buttons?.5:0,c.x=c.clientX,c.y=c.clientY,c.pointerId=b.pointerId||0,c.width=b.width||0,c.height=b.height||0,c.pressure=f,c.tiltX=b.tiltX||0,c.tiltY=b.tiltY||0,c.twist=b.twist||0,c.tangentialPressure=b.tangentialPressure||0,c.pointerType=b.pointerType||"",c.hwTimestamp=b.hwTimestamp||0,c.isPrimary=b.isPrimary||!1,c}function b(){this.array=[],this.size=0}function c(a,b,c,d){this.addCallback=a.bind(d),this.removeCallback=b.bind(d),this.changedCallback=c.bind(d),A&&(this.observer=new A(this.mutationWatcher.bind(this)))}function d(a){return"body /shadow-deep/ "+e(a)}function e(a){return'[touch-action="'+a+'"]'}function f(a){return"{ -ms-touch-action: "+a+"; touch-action: "+a+"; }"}function g(){if(F){D.forEach(function(a){String(a)===a?(E+=e(a)+f(a)+"\n",G&&(E+=d(a)+f(a)+"\n")):(E+=a.selectors.map(e)+f(a.rule)+"\n",G&&(E+=a.selectors.map(d)+f(a.rule)+"\n"))});var a=document.createElement("style");a.textContent=E,document.head.appendChild(a)}}function h(){if(!window.PointerEvent){if(window.PointerEvent=a,window.navigator.msPointerEnabled){var b=window.navigator.msMaxTouchPoints;Object.defineProperty(window.navigator,"maxTouchPoints",{value:b,enumerable:!0}),u.registerSource("ms",_)}else Object.defineProperty(window.navigator,"maxTouchPoints",{value:0,enumerable:!0}),u.registerSource("mouse",N),void 0!==window.ontouchstart&&u.registerSource("touch",V);u.register(document)}}function i(a){if(!u.pointermap.has(a)){var b=new Error("InvalidPointerId");throw b.name="InvalidPointerId",b}}function j(a){for(var b=a.parentNode;b&&b!==a.ownerDocument;)b=b.parentNode;if(!b){var c=new Error("InvalidStateError");throw c.name="InvalidStateError",c}}function k(a){var b=u.pointermap.get(a);return 0!==b.buttons}function l(){window.Element&&!Element.prototype.setPointerCapture&&Object.defineProperties(Element.prototype,{setPointerCapture:{value:W},releasePointerCapture:{value:X},hasPointerCapture:{value:Y}})}
var m=["bubbles","cancelable","view","detail","screenX","screenY","clientX","clientY","ctrlKey","altKey","shiftKey","metaKey","button","relatedTarget","pageX","pageY"],n=[!1,!1,null,null,0,0,0,0,!1,!1,!1,!1,0,null,0,0],o=window.Map&&window.Map.prototype.forEach,p=o?Map:b;b.prototype={set:function(a,b){return void 0===b?this["delete"](a):(this.has(a)||this.size++,void(this.array[a]=b))},has:function(a){return void 0!==this.array[a]},"delete":function(a){this.has(a)&&(delete this.array[a],this.size--)},get:function(a){return this.array[a]},clear:function(){this.array.length=0,this.size=0},forEach:function(a,b){return this.array.forEach(function(c,d){a.call(b,c,d,this)},this)}};var q=["bubbles","cancelable","view","detail","screenX","screenY","clientX","clientY","ctrlKey","altKey","shiftKey","metaKey","button","relatedTarget","buttons","pointerId","width","height","pressure","tiltX","tiltY","pointerType","hwTimestamp","isPrimary","type","target","currentTarget","which","pageX","pageY","timeStamp"],r=[!1,!1,null,null,0,0,0,0,!1,!1,!1,!1,0,null,0,0,0,0,0,0,0,"",0,!1,"",null,null,0,0,0,0],s={pointerover:1,pointerout:1,pointerenter:1,pointerleave:1},t="undefined"!=typeof SVGElementInstance,u={pointermap:new p,eventMap:Object.create(null),captureInfo:Object.create(null),eventSources:Object.create(null),eventSourceList:[],registerSource:function(a,b){var c=b,d=c.events;d&&(d.forEach(function(a){c[a]&&(this.eventMap[a]=c[a].bind(c))},this),this.eventSources[a]=c,this.eventSourceList.push(c))},register:function(a){for(var b,c=this.eventSourceList.length,d=0;d<c&&(b=this.eventSourceList[d]);d++)
b.register.call(b,a)},unregister:function(a){for(var b,c=this.eventSourceList.length,d=0;d<c&&(b=this.eventSourceList[d]);d++)
b.unregister.call(b,a)},contains:function(a,b){try{return a.contains(b)}catch(c){return!1}},down:function(a){a.bubbles=!0,this.fireEvent("pointerdown",a)},move:function(a){a.bubbles=!0,this.fireEvent("pointermove",a)},up:function(a){a.bubbles=!0,this.fireEvent("pointerup",a)},enter:function(a){a.bubbles=!1,this.fireEvent("pointerenter",a)},leave:function(a){a.bubbles=!1,this.fireEvent("pointerleave",a)},over:function(a){a.bubbles=!0,this.fireEvent("pointerover",a)},out:function(a){a.bubbles=!0,this.fireEvent("pointerout",a)},cancel:function(a){a.bubbles=!0,this.fireEvent("pointercancel",a)},leaveOut:function(a){this.out(a),this.propagate(a,this.leave,!1)},enterOver:function(a){this.over(a),this.propagate(a,this.enter,!0)},eventHandler:function(a){if(!a._handledByPE){var b=a.type,c=this.eventMap&&this.eventMap[b];c&&c(a),a._handledByPE=!0}},listen:function(a,b){b.forEach(function(b){this.addEvent(a,b)},this)},unlisten:function(a,b){b.forEach(function(b){this.removeEvent(a,b)},this)},addEvent:function(a,b){a.addEventListener(b,this.boundHandler)},removeEvent:function(a,b){a.removeEventListener(b,this.boundHandler)},makeEvent:function(b,c){this.captureInfo[c.pointerId]&&(c.relatedTarget=null);var d=new a(b,c);return c.preventDefault&&(d.preventDefault=c.preventDefault),d._target=d._target||c.target,d},fireEvent:function(a,b){var c=this.makeEvent(a,b);return this.dispatchEvent(c)},cloneEvent:function(a){for(var b,c=Object.create(null),d=0;d<q.length;d++)b=q[d],c[b]=a[b]||r[d],!t||"target"!==b&&"relatedTarget"!==b||c[b]instanceof SVGElementInstance&&(c[b]=c[b].correspondingUseElement);return a.preventDefault&&(c.preventDefault=function(){a.preventDefault()}),c},getTarget:function(a){var b=this.captureInfo[a.pointerId];return b?a._target!==b&&a.type in s?void 0:b:a._target},propagate:function(a,b,c){for(var d=a.target,e=[];d!==document&&!d.contains(a.relatedTarget);) if(e.push(d),d=d.parentNode,!d)return;c&&e.reverse(),e.forEach(function(c){a.target=c,b.call(this,a)},this)},setCapture:function(b,c,d){this.captureInfo[b]&&this.releaseCapture(b,d),this.captureInfo[b]=c,this.implicitRelease=this.releaseCapture.bind(this,b,d),document.addEventListener("pointerup",this.implicitRelease),document.addEventListener("pointercancel",this.implicitRelease);var e=new a("gotpointercapture");e.pointerId=b,e._target=c,d||this.asyncDispatchEvent(e)},releaseCapture:function(b,c){var d=this.captureInfo[b];if(d){this.captureInfo[b]=void 0,document.removeEventListener("pointerup",this.implicitRelease),document.removeEventListener("pointercancel",this.implicitRelease);var e=new a("lostpointercapture");e.pointerId=b,e._target=d,c||this.asyncDispatchEvent(e)}},dispatchEvent:/*scope.external.dispatchEvent || */function(a){var b=this.getTarget(a);if(b)return b.dispatchEvent(a)},asyncDispatchEvent:function(a){requestAnimationFrame(this.dispatchEvent.bind(this,a))}};u.boundHandler=u.eventHandler.bind(u);var v={shadow:function(a){if(a)return a.shadowRoot||a.webkitShadowRoot},canTarget:function(a){return a&&Boolean(a.elementFromPoint)},targetingShadow:function(a){var b=this.shadow(a);if(this.canTarget(b))return b},olderShadow:function(a){var b=a.olderShadowRoot;if(!b){var c=a.querySelector("shadow");c&&(b=c.olderShadowRoot)}return b},allShadows:function(a){for(var b=[],c=this.shadow(a);c;)b.push(c),c=this.olderShadow(c);return b},searchRoot:function(a,b,c){if(a){var d,e,f=a.elementFromPoint(b,c);for(e=this.targetingShadow(f);e;){if(d=e.elementFromPoint(b,c)){var g=this.targetingShadow(d);return this.searchRoot(g,b,c)||d} e=this.olderShadow(e)} return f}},owner:function(a){
for(var b=a;b.parentNode;)b=b.parentNode;
return b.nodeType!==Node.DOCUMENT_NODE&&b.nodeType!==Node.DOCUMENT_FRAGMENT_NODE&&(b=document),b},findTarget:function(a){var b=a.clientX,c=a.clientY,d=this.owner(a.target);
return d.elementFromPoint(b,c)||(d=document),this.searchRoot(d,b,c)}},w=Array.prototype.forEach.call.bind(Array.prototype.forEach),x=Array.prototype.map.call.bind(Array.prototype.map),y=Array.prototype.slice.call.bind(Array.prototype.slice),z=Array.prototype.filter.call.bind(Array.prototype.filter),A=window.MutationObserver||window.WebKitMutationObserver,B="[touch-action]",C={subtree:!0,childList:!0,attributes:!0,attributeOldValue:!0,attributeFilter:["touch-action"]};c.prototype={watchSubtree:function(a){
//
this.observer&&v.canTarget(a)&&this.observer.observe(a,C)},enableOnSubtree:function(a){this.watchSubtree(a),a===document&&"complete"!==document.readyState?this.installOnLoad():this.installNewSubtree(a)},installNewSubtree:function(a){w(this.findElements(a),this.addElement,this)},findElements:function(a){return a.querySelectorAll?a.querySelectorAll(B):[]},removeElement:function(a){this.removeCallback(a)},addElement:function(a){this.addCallback(a)},elementChanged:function(a,b){this.changedCallback(a,b)},concatLists:function(a,b){return a.concat(y(b))},
installOnLoad:function(){document.addEventListener("readystatechange",function(){"complete"===document.readyState&&this.installNewSubtree(document)}.bind(this))},isElement:function(a){return a.nodeType===Node.ELEMENT_NODE},flattenMutationTree:function(a){
var b=x(a,this.findElements,this);
return b.push(z(a,this.isElement)),b.reduce(this.concatLists,[])},mutationWatcher:function(a){a.forEach(this.mutationHandler,this)},mutationHandler:function(a){if("childList"===a.type){var b=this.flattenMutationTree(a.addedNodes);b.forEach(this.addElement,this);var c=this.flattenMutationTree(a.removedNodes);c.forEach(this.removeElement,this)}else"attributes"===a.type&&this.elementChanged(a.target,a.oldValue)}};var D=["none","auto","pan-x","pan-y",{rule:"pan-x pan-y",selectors:["pan-x pan-y","pan-y pan-x"]}],E="",F=window.PointerEvent||window.MSPointerEvent,G=!window.ShadowDOMPolyfill&&document.head.createShadowRoot,H=u.pointermap,I=25,J=[1,4,2,8,16],K=!1;try{K=1===new MouseEvent("test",{buttons:1}).buttons}catch(L){}
var M,N={POINTER_ID:1,POINTER_TYPE:"mouse",events:["mousedown","mousemove","mouseup","mouseover","mouseout"],register:function(a){u.listen(a,this.events)},unregister:function(a){u.unlisten(a,this.events)},lastTouches:[],
isEventSimulatedFromTouch:function(a){for(var b,c=this.lastTouches,d=a.clientX,e=a.clientY,f=0,g=c.length;f<g&&(b=c[f]);f++){
var h=Math.abs(d-b.x),i=Math.abs(e-b.y);if(h<=I&&i<=I)return!0}},prepareEvent:function(a){var b=u.cloneEvent(a),c=b.preventDefault;return b.preventDefault=function(){a.preventDefault(),c()},b.pointerId=this.POINTER_ID,b.isPrimary=!0,b.pointerType=this.POINTER_TYPE,b},prepareButtonsForMove:function(a,b){var c=H.get(this.POINTER_ID);
0!==b.which&&c?a.buttons=c.buttons:a.buttons=0,b.buttons=a.buttons},mousedown:function(a){if(!this.isEventSimulatedFromTouch(a)){var b=H.get(this.POINTER_ID),c=this.prepareEvent(a);K||(c.buttons=J[c.button],b&&(c.buttons|=b.buttons),a.buttons=c.buttons),H.set(this.POINTER_ID,a),b&&0!==b.buttons?u.move(c):u.down(c)}},mousemove:function(a){if(!this.isEventSimulatedFromTouch(a)){var b=this.prepareEvent(a);K||this.prepareButtonsForMove(b,a),b.button=-1,H.set(this.POINTER_ID,a),u.move(b)}},mouseup:function(a){if(!this.isEventSimulatedFromTouch(a)){var b=H.get(this.POINTER_ID),c=this.prepareEvent(a);if(!K){var d=J[c.button];
c.buttons=b?b.buttons&~d:0,a.buttons=c.buttons}H.set(this.POINTER_ID,a),
c.buttons&=~J[c.button],0===c.buttons?u.up(c):u.move(c)}},mouseover:function(a){if(!this.isEventSimulatedFromTouch(a)){var b=this.prepareEvent(a);K||this.prepareButtonsForMove(b,a),b.button=-1,H.set(this.POINTER_ID,a),u.enterOver(b)}},mouseout:function(a){if(!this.isEventSimulatedFromTouch(a)){var b=this.prepareEvent(a);K||this.prepareButtonsForMove(b,a),b.button=-1,u.leaveOut(b)}},cancel:function(a){var b=this.prepareEvent(a);u.cancel(b),this.deactivateMouse()},deactivateMouse:function(){H["delete"](this.POINTER_ID)}},O=u.captureInfo,P=v.findTarget.bind(v),Q=v.allShadows.bind(v),R=u.pointermap,S=2500,T=200,U="touch-action",V={events:["touchstart","touchmove","touchend","touchcancel"],register:function(a){M.enableOnSubtree(a)},unregister:function(){},elementAdded:function(a){var b=a.getAttribute(U),c=this.touchActionToScrollType(b);c&&(a._scrollType=c,u.listen(a,this.events),
Q(a).forEach(function(a){a._scrollType=c,u.listen(a,this.events)},this))},elementRemoved:function(a){a._scrollType=void 0,u.unlisten(a,this.events),
Q(a).forEach(function(a){a._scrollType=void 0,u.unlisten(a,this.events)},this)},elementChanged:function(a,b){var c=a.getAttribute(U),d=this.touchActionToScrollType(c),e=this.touchActionToScrollType(b);
d&&e?(a._scrollType=d,Q(a).forEach(function(a){a._scrollType=d},this)):e?this.elementRemoved(a):d&&this.elementAdded(a)},scrollTypes:{EMITTER:"none",XSCROLLER:"pan-x",YSCROLLER:"pan-y",SCROLLER:/^(?:pan-x pan-y)|(?:pan-y pan-x)|auto$/},touchActionToScrollType:function(a){var b=a,c=this.scrollTypes;return"none"===b?"none":b===c.XSCROLLER?"X":b===c.YSCROLLER?"Y":c.SCROLLER.exec(b)?"XY":void 0},POINTER_TYPE:"touch",firstTouch:null,isPrimaryTouch:function(a){return this.firstTouch===a.identifier},setPrimaryTouch:function(a){
(0===R.size||1===R.size&&R.has(1))&&(this.firstTouch=a.identifier,this.firstXY={X:a.clientX,Y:a.clientY},this.scrolling=!1,this.cancelResetClickCount())},removePrimaryPointer:function(a){a.isPrimary&&(this.firstTouch=null,this.firstXY=null,this.resetClickCount())},clickCount:0,resetId:null,resetClickCount:function(){var a=function(){this.clickCount=0,this.resetId=null}.bind(this);this.resetId=setTimeout(a,T)},cancelResetClickCount:function(){this.resetId&&clearTimeout(this.resetId)},typeToButtons:function(a){var b=0;return"touchstart"!==a&&"touchmove"!==a||(b=1),b},touchToPointer:function(a){var b=this.currentTouchEvent,c=u.cloneEvent(a),d=c.pointerId=a.identifier+2;c.target=O[d]||P(c),c.bubbles=!0,c.cancelable=!0,c.detail=this.clickCount,c.button=0,c.buttons=this.typeToButtons(b.type),c.width=2*(a.radiusX||a.webkitRadiusX||0),c.height=2*(a.radiusY||a.webkitRadiusY||0),c.pressure=a.force||a.webkitForce||.5,c.isPrimary=this.isPrimaryTouch(a),c.pointerType=this.POINTER_TYPE,
c.altKey=b.altKey,c.ctrlKey=b.ctrlKey,c.metaKey=b.metaKey,c.shiftKey=b.shiftKey;
var e=this;return c.preventDefault=function(){e.scrolling=!1,e.firstXY=null,b.preventDefault()},c},processTouches:function(a,b){var c=a.changedTouches;this.currentTouchEvent=a;for(var d,e=0;e<c.length;e++)d=c[e],b.call(this,this.touchToPointer(d))},
shouldScroll:function(a){if(this.firstXY){var b,c=a.currentTarget._scrollType;if("none"===c)
b=!1;else if("XY"===c)
b=!0;else{var d=a.changedTouches[0],e=c,f="Y"===c?"X":"Y",g=Math.abs(d["client"+e]-this.firstXY[e]),h=Math.abs(d["client"+f]-this.firstXY[f]);
b=g>=h}return this.firstXY=null,b}},findTouch:function(a,b){for(var c,d=0,e=a.length;d<e&&(c=a[d]);d++)if(c.identifier===b)return!0},
vacuumTouches:function(a){var b=a.touches;
if(R.size>=b.length){var c=[];R.forEach(function(a,d){
if(1!==d&&!this.findTouch(b,d-2)){var e=a.out;c.push(e)}},this),c.forEach(this.cancelOut,this)}},touchstart:function(a){this.vacuumTouches(a),this.setPrimaryTouch(a.changedTouches[0]),this.dedupSynthMouse(a),this.scrolling||(this.clickCount++,this.processTouches(a,this.overDown))},overDown:function(a){R.set(a.pointerId,{target:a.target,out:a,outTarget:a.target}),u.enterOver(a),u.down(a)},touchmove:function(a){this.scrolling||(this.shouldScroll(a)?(this.scrolling=!0,this.touchcancel(a)):(a.preventDefault(),this.processTouches(a,this.moveOverOut)))},moveOverOut:function(a){var b=a,c=R.get(b.pointerId);
if(c){var d=c.out,e=c.outTarget;u.move(b),d&&e!==b.target&&(d.relatedTarget=b.target,b.relatedTarget=e,
d.target=e,b.target?(u.leaveOut(d),u.enterOver(b)):(
b.target=e,b.relatedTarget=null,this.cancelOut(b))),c.out=b,c.outTarget=b.target}},touchend:function(a){this.dedupSynthMouse(a),this.processTouches(a,this.upOut)},upOut:function(a){this.scrolling||(u.up(a),u.leaveOut(a)),this.cleanUpPointer(a)},touchcancel:function(a){this.processTouches(a,this.cancelOut)},cancelOut:function(a){u.cancel(a),u.leaveOut(a),this.cleanUpPointer(a)},cleanUpPointer:function(a){R["delete"](a.pointerId),this.removePrimaryPointer(a)},
dedupSynthMouse:function(a){var b=N.lastTouches,c=a.changedTouches[0];
if(this.isPrimaryTouch(c)){
var d={x:c.clientX,y:c.clientY};b.push(d);var e=function(a,b){var c=a.indexOf(b);c>-1&&a.splice(c,1)}.bind(null,b,d);setTimeout(e,S)}}};M=new c(V.elementAdded,V.elementRemoved,V.elementChanged,V);var W,X,Y,Z=u.pointermap,$=window.MSPointerEvent&&"number"==typeof window.MSPointerEvent.MSPOINTER_TYPE_MOUSE,_={events:["MSPointerDown","MSPointerMove","MSPointerUp","MSPointerOut","MSPointerOver","MSPointerCancel","MSGotPointerCapture","MSLostPointerCapture"],register:function(a){u.listen(a,this.events)},unregister:function(a){u.unlisten(a,this.events)},POINTER_TYPES:["","unavailable","touch","pen","mouse"],prepareEvent:function(a){var b=a;return $&&(b=u.cloneEvent(a),b.pointerType=this.POINTER_TYPES[a.pointerType]),b},cleanup:function(a){Z["delete"](a)},MSPointerDown:function(a){Z.set(a.pointerId,a);var b=this.prepareEvent(a);u.down(b)},MSPointerMove:function(a){var b=this.prepareEvent(a);u.move(b)},MSPointerUp:function(a){var b=this.prepareEvent(a);u.up(b),this.cleanup(a.pointerId)},MSPointerOut:function(a){var b=this.prepareEvent(a);u.leaveOut(b)},MSPointerOver:function(a){var b=this.prepareEvent(a);u.enterOver(b)},MSPointerCancel:function(a){var b=this.prepareEvent(a);u.cancel(b),this.cleanup(a.pointerId)},MSLostPointerCapture:function(a){var b=u.makeEvent("lostpointercapture",a);u.dispatchEvent(b)},MSGotPointerCapture:function(a){var b=u.makeEvent("gotpointercapture",a);u.dispatchEvent(b)}},aa=window.navigator;aa.msPointerEnabled?(W=function(a){i(a),j(this),k(a)&&(u.setCapture(a,this,!0),this.msSetPointerCapture(a))},X=function(a){i(a),u.releaseCapture(a,!0),this.msReleasePointerCapture(a)}):(W=function(a){i(a),j(this),k(a)&&u.setCapture(a,this)},X=function(a){i(a),u.releaseCapture(a)}),Y=function(a){return!!u.captureInfo[a]},g(),h(),l();var ba={dispatcher:u,Installer:c,PointerEvent:a,PointerMap:p,targetFinding:v};return ba});

///////////////////////////////////////////////

///////////////////////////////////////////////
var config = {"dark_mode": false, "show_pads": true, "show_fabrication": false, "show_silkscreen": true, "highlight_pin1": false, "redraw_on_drag": true, "board_rotation": 0, "checkboxes": "Sourced,Placed", "bom_view": "left-right", "layer_view": "FB", "fields": ["Value", "Footprint"]}
///////////////////////////////////////////////

///////////////////////////////////////////////
var pcbdata = JSON.parse(LZString.decompressFromBase64("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"))
///////////////////////////////////////////////

///////////////////////////////////////////////
/* Utility functions */

var storagePrefix = 'KiCad_HTML_BOM__' + pcbdata.metadata.title + '__' +
  pcbdata.metadata.revision + '__#';
var storage;

function initStorage(key) {
  try {
    window.localStorage.getItem("blank");
    storage = window.localStorage;
  } catch (e) {
    // localStorage not available
  }
  if (!storage) {
    try {
      window.sessionStorage.getItem("blank");
      storage = window.sessionStorage;
    } catch (e) {
      // sessionStorage also not available
    }
  }
}

function readStorage(key) {
  if (storage) {
    return storage.getItem(storagePrefix + key);
  } else {
    return null;
  }
}

function writeStorage(key, value) {
  if (storage) {
    storage.setItem(storagePrefix + key, value);
  }
}

function fancyDblClickHandler(el, onsingle, ondouble) {
  return function() {
    if (el.getAttribute("data-dblclick") == null) {
      el.setAttribute("data-dblclick", 1);
      setTimeout(function() {
        if (el.getAttribute("data-dblclick") == 1) {
          onsingle();
        }
        el.removeAttribute("data-dblclick");
      }, 200);
    } else {
      el.removeAttribute("data-dblclick");
      ondouble();
    }
  }
}

function smoothScrollToRow(rowid) {
  document.getElementById(rowid).scrollIntoView({
    behavior: "smooth",
    block: "center",
    inline: "nearest"
  });
}

function focusInputField(input) {
  input.scrollIntoView(false);
  input.focus();
  input.select();
}

function copyToClipboard() {
  var text = '';
  for (var node of bomhead.childNodes[0].childNodes) {
    if (node.firstChild) {
      text = text + node.firstChild.nodeValue;
    }
    if (node != bomhead.childNodes[0].lastChild) {
      text += '\t';
    }
  }
  text += '\n';
  for (var row of bombody.childNodes) {
    for (var cell of row.childNodes) {
      for (var node of cell.childNodes) {
        if (node.nodeName == "INPUT") {
          if (node.checked) {
            text = text + '✓';
          }
        } else if (node.nodeName == "MARK") {
          text = text + node.firstChild.nodeValue;
        } else {
          text = text + node.nodeValue;
        }
      }
      if (cell != row.lastChild) {
        text += '\t';
      }
    }
    text += '\n';
  }
  var textArea = document.createElement("textarea");
  textArea.classList.add('clipboard-temp');
  textArea.value = text;

  document.body.appendChild(textArea);
  textArea.focus();
  textArea.select();

  try {
    if (document.execCommand('copy')) {
      console.log('Bom copied to clipboard.');
    }
  } catch (err) {
    console.log('Can not copy to clipboard.');
  }

  document.body.removeChild(textArea);
}

function removeGutterNode(node) {
  for (var i = 0; i < node.childNodes.length; i++) {
    if (node.childNodes[i].classList &&
      node.childNodes[i].classList.contains("gutter")) {
      node.removeChild(node.childNodes[i]);
      break;
    }
  }
}

function cleanGutters() {
  removeGutterNode(document.getElementById("bot"));
  removeGutterNode(document.getElementById("canvasdiv"));
}

var units = {
  prefixes: {
    giga: ["G", "g", "giga", "Giga", "GIGA"],
    mega: ["M", "mega", "Mega", "MEGA"],
    kilo: ["K", "k", "kilo", "Kilo", "KILO"],
    milli: ["m", "milli", "Milli", "MILLI"],
    micro: ["U", "u", "micro", "Micro", "MICRO", "μ", "µ"], // different utf8 μ
    nano: ["N", "n", "nano", "Nano", "NANO"],
    pico: ["P", "p", "pico", "Pico", "PICO"],
  },
  unitsShort: ["R", "r", "Ω", "F", "f", "H", "h"],
  unitsLong: [
    "OHM", "Ohm", "ohm", "ohms",
    "FARAD", "Farad", "farad",
    "HENRY", "Henry", "henry"
  ],
  getMultiplier: function(s) {
    if (this.prefixes.giga.includes(s)) return 1e9;
    if (this.prefixes.mega.includes(s)) return 1e6;
    if (this.prefixes.kilo.includes(s)) return 1e3;
    if (this.prefixes.milli.includes(s)) return 1e-3;
    if (this.prefixes.micro.includes(s)) return 1e-6;
    if (this.prefixes.nano.includes(s)) return 1e-9;
    if (this.prefixes.pico.includes(s)) return 1e-12;
    return 1;
  },
  valueRegex: null,
}

function initUtils() {
  var allPrefixes = units.prefixes.giga
    .concat(units.prefixes.mega)
    .concat(units.prefixes.kilo)
    .concat(units.prefixes.milli)
    .concat(units.prefixes.micro)
    .concat(units.prefixes.nano)
    .concat(units.prefixes.pico);
  var allUnits = units.unitsShort.concat(units.unitsLong);
  units.valueRegex = new RegExp("^([0-9\.]+)" +
    "\\s*(" + allPrefixes.join("|") + ")?" +
    "(" + allUnits.join("|") + ")?" +
    "(\\b.*)?$", "");
  units.valueAltRegex = new RegExp("^([0-9]*)" +
    "(" + units.unitsShort.join("|") + ")?" +
    "([GgMmKkUuNnPp])?" +
    "([0-9]*)" +
    "(\\b.*)?$", "");
  if (config.fields.includes("Value")) {
    var index = config.fields.indexOf("Value");
    pcbdata.bom["parsedValues"] = {};
    for (var id in pcbdata.bom.fields) {
      pcbdata.bom.parsedValues[id] = parseValue(pcbdata.bom.fields[id][index])
    }
  }
}

function parseValue(val, ref) {
  var inferUnit = (unit, ref) => {
    if (unit) {
      unit = unit.toLowerCase();
      if (unit == 'Ω' || unit == "ohm" || unit == "ohms") {
        unit = 'r';
      }
      unit = unit[0];
    } else {
      ref = /^([a-z]+)\d+$/i.exec(ref);
      if (ref) {
        ref = ref[1].toLowerCase();
        if (ref == "c") unit = 'f';
        else if (ref == "l") unit = 'h';
        else if (ref == "r" || ref == "rv") unit = 'r';
        else unit = null;
      }
    }
    return unit;
  };
  val = val.replace(/,/g, "");
  var match = units.valueRegex.exec(val);
  var unit;
  if (match) {
    val = parseFloat(match[1]);
    if (match[2]) {
      val = val * units.getMultiplier(match[2]);
    }
    unit = inferUnit(match[3], ref);
    if (!unit) return null;
    else return {
      val: val,
      unit: unit,
      extra: match[4],
    }
  }
  match = units.valueAltRegex.exec(val);
  if (match && (match[1] || match[4])) {
    val = parseFloat(match[1] + "." + match[4]);
    if (match[3]) {
      val = val * units.getMultiplier(match[3]);
    }
    unit = inferUnit(match[2], ref);
    if (!unit) return null;
    else return {
      val: val,
      unit: unit,
      extra: match[5],
    }
  }
  return null;
}

function valueCompare(a, b, stra, strb) {
  if (a === null && b === null) {
    // Failed to parse both values, compare them as strings.
    if (stra != strb) return stra > strb ? 1 : -1;
    else return 0;
  } else if (a === null) {
    return 1;
  } else if (b === null) {
    return -1;
  } else {
    if (a.unit != b.unit) return a.unit > b.unit ? 1 : -1;
    else if (a.val != b.val) return a.val > b.val ? 1 : -1;
    else if (a.extra != b.extra) return a.extra > b.extra ? 1 : -1;
    else return 0;
  }
}

function validateSaveImgDimension(element) {
  var valid = false;
  var intValue = 0;
  if (/^[1-9]\d*$/.test(element.value)) {
    intValue = parseInt(element.value);
    if (intValue <= 16000) {
      valid = true;
    }
  }
  if (valid) {
    element.classList.remove("invalid");
  } else {
    element.classList.add("invalid");
  }
  return intValue;
}

function saveImage(layer) {
  var width = validateSaveImgDimension(document.getElementById("render-save-width"));
  var height = validateSaveImgDimension(document.getElementById("render-save-height"));
  var bgcolor = null;
  if (!document.getElementById("render-save-transparent").checked) {
    var style = getComputedStyle(topmostdiv);
    bgcolor = style.getPropertyValue("background-color");
  }
  if (!width || !height) return;

  // Prepare image
  var canvas = document.createElement("canvas");
  var layerdict = {
    transform: {
      x: 0,
      y: 0,
      s: 1,
      panx: 0,
      pany: 0,
      zoom: 1,
    },
    bg: canvas,
    fab: canvas,
    silk: canvas,
    highlight: canvas,
    layer: layer,
  }
  // Do the rendering
  recalcLayerScale(layerdict, width, height);
  prepareLayer(layerdict);
  clearCanvas(canvas, bgcolor);
  drawBackground(layerdict, false);
  drawHighlightsOnLayer(layerdict, false);

  // Save image
  var imgdata = canvas.toDataURL("image/png");

  var filename = pcbdata.metadata.title;
  if (pcbdata.metadata.revision) {
    filename += `.${pcbdata.metadata.revision}`;
  }
  filename += `.${layer}.png`;
  saveFile(filename, dataURLtoBlob(imgdata));
}

function saveSettings() {
  var data = {
    type: "InteractiveHtmlBom settings",
    version: 1,
    pcbmetadata: pcbdata.metadata,
    settings: settings,
  }
  var blob = new Blob([JSON.stringify(data, null, 4)], {
    type: "application/json"
  });
  saveFile(`${pcbdata.metadata.title}.settings.json`, blob);
}

function loadSettings() {
  var input = document.createElement("input");
  input.type = "file";
  input.accept = ".settings.json";
  input.onchange = function(e) {
    var file = e.target.files[0];
    var reader = new FileReader();
    reader.onload = readerEvent => {
      var content = readerEvent.target.result;
      var newSettings;
      try {
        newSettings = JSON.parse(content);
      } catch (e) {
        alert("Selected file is not InteractiveHtmlBom settings file.");
        return;
      }
      if (newSettings.type != "InteractiveHtmlBom settings") {
        alert("Selected file is not InteractiveHtmlBom settings file.");
        return;
      }
      var metadataMatches = newSettings.hasOwnProperty("pcbmetadata");
      if (metadataMatches) {
        for (var k in pcbdata.metadata) {
          if (!newSettings.pcbmetadata.hasOwnProperty(k) || newSettings.pcbmetadata[k] != pcbdata.metadata[k]) {
            metadataMatches = false;
          }
        }
      }
      if (!metadataMatches) {
        var currentMetadata = JSON.stringify(pcbdata.metadata, null, 4);
        var fileMetadata = JSON.stringify(newSettings.pcbmetadata, null, 4);
        if (!confirm(
            `Settins file metadata does not match current metadata.\n\n` +
            `Page metadata:\n${currentMetadata}\n\n` +
            `Settings file metadata:\n${fileMetadata}\n\n` +
            `Press OK if you would like to import settings anyway.`)) {
          return;
        }
      }
      overwriteSettings(newSettings.settings);
    }
    reader.readAsText(file, 'UTF-8');
  }
  input.click();
}

function overwriteSettings(newSettings) {
  initDone = false;
  Object.assign(settings, newSettings);
  writeStorage("bomlayout", settings.bomlayout);
  writeStorage("bommode", settings.bommode);
  writeStorage("canvaslayout", settings.canvaslayout);
  writeStorage("bomCheckboxes", settings.checkboxes.join(","));
  document.getElementById("bomCheckboxes").value = settings.checkboxes.join(",");
  for (var checkbox of settings.checkboxes) {
    writeStorage("checkbox_" + checkbox, settings.checkboxStoredRefs[checkbox]);
  }
  writeStorage("markWhenChecked", settings.markWhenChecked);
  padsVisible(settings.renderPads);
  document.getElementById("padsCheckbox").checked = settings.renderPads;
  fabricationVisible(settings.renderFabrication);
  document.getElementById("fabricationCheckbox").checked = settings.renderFabrication;
  silkscreenVisible(settings.renderSilkscreen);
  document.getElementById("silkscreenCheckbox").checked = settings.renderSilkscreen;
  referencesVisible(settings.renderReferences);
  document.getElementById("referencesCheckbox").checked = settings.renderReferences;
  valuesVisible(settings.renderValues);
  document.getElementById("valuesCheckbox").checked = settings.renderValues;
  tracksVisible(settings.renderTracks);
  document.getElementById("tracksCheckbox").checked = settings.renderTracks;
  zonesVisible(settings.renderZones);
  document.getElementById("zonesCheckbox").checked = settings.renderZones;
  dnpOutline(settings.renderDnpOutline);
  document.getElementById("dnpOutlineCheckbox").checked = settings.renderDnpOutline;
  setRedrawOnDrag(settings.redrawOnDrag);
  document.getElementById("dragCheckbox").checked = settings.redrawOnDrag;
  setDarkMode(settings.darkMode);
  document.getElementById("darkmodeCheckbox").checked = settings.darkMode;
  setHighlightPin1(settings.highlightpin1);
  document.getElementById("highlightpin1Checkbox").checked = settings.highlightpin1;
  showFootprints(settings.show_footprints);
  writeStorage("boardRotation", settings.boardRotation);
  document.getElementById("boardRotation").value = settings.boardRotation / 5;
  document.getElementById("rotationDegree").textContent = settings.boardRotation;
  initDone = true;
  prepCheckboxes();
  changeBomLayout(settings.bomlayout);
}

function saveFile(filename, blob) {
  var link = document.createElement("a");
  var objurl = URL.createObjectURL(blob);
  link.download = filename;
  link.href = objurl;
  link.click();
}

function dataURLtoBlob(dataurl) {
  var arr = dataurl.split(','),
    mime = arr[0].match(/:(.*?);/)[1],
    bstr = atob(arr[1]),
    n = bstr.length,
    u8arr = new Uint8Array(n);
  while (n--) {
    u8arr[n] = bstr.charCodeAt(n);
  }
  return new Blob([u8arr], {
    type: mime
  });
}

var settings = {
  canvaslayout: "default",
  bomlayout: "default",
  bommode: "grouped",
  checkboxes: [],
  checkboxStoredRefs: {},
  darkMode: false,
  highlightpin1: false,
  redrawOnDrag: true,
  boardRotation: 0,
  renderPads: true,
  renderReferences: true,
  renderValues: true,
  renderSilkscreen: true,
  renderFabrication: true,
  renderDnpOutline: false,
  renderTracks: true,
  renderZones: true,
  columnOrder: [],
  hiddenColumns: [],
}

function initDefaults() {
  settings.bomlayout = readStorage("bomlayout");
  if (settings.bomlayout === null) {
    settings.bomlayout = config.bom_view;
  }
  if (!['bom-only', 'left-right', 'top-bottom'].includes(settings.bomlayout)) {
    settings.bomlayout = config.bom_view;
  }
  settings.bommode = readStorage("bommode");
  if (settings.bommode === null) {
    settings.bommode = "grouped";
  }
  if (!["grouped", "ungrouped", "netlist"].includes(settings.bommode)) {
    settings.bommode = "grouped";
  }
  settings.canvaslayout = readStorage("canvaslayout");
  if (settings.canvaslayout === null) {
    settings.canvaslayout = config.layer_view;
  }
  var bomCheckboxes = readStorage("bomCheckboxes");
  if (bomCheckboxes === null) {
    bomCheckboxes = config.checkboxes;
  }
  settings.checkboxes = bomCheckboxes.split(",").filter((e) => e);
  document.getElementById("bomCheckboxes").value = bomCheckboxes;

  settings.markWhenChecked = readStorage("markWhenChecked") || "";
  populateMarkWhenCheckedOptions();

  function initBooleanSetting(storageString, def, elementId, func) {
    var b = readStorage(storageString);
    if (b === null) {
      b = def;
    } else {
      b = (b == "true");
    }
    document.getElementById(elementId).checked = b;
    func(b);
  }

  initBooleanSetting("padsVisible", config.show_pads, "padsCheckbox", padsVisible);
  initBooleanSetting("fabricationVisible", config.show_fabrication, "fabricationCheckbox", fabricationVisible);
  initBooleanSetting("silkscreenVisible", config.show_silkscreen, "silkscreenCheckbox", silkscreenVisible);
  initBooleanSetting("referencesVisible", true, "referencesCheckbox", referencesVisible);
  initBooleanSetting("valuesVisible", true, "valuesCheckbox", valuesVisible);
  if ("tracks" in pcbdata) {
    initBooleanSetting("tracksVisible", true, "tracksCheckbox", tracksVisible);
    initBooleanSetting("zonesVisible", true, "zonesCheckbox", zonesVisible);
  } else {
    document.getElementById("tracksAndZonesCheckboxes").style.display = "none";
    tracksVisible(false);
    zonesVisible(false);
  }
  initBooleanSetting("dnpOutline", false, "dnpOutlineCheckbox", dnpOutline);
  initBooleanSetting("redrawOnDrag", config.redraw_on_drag, "dragCheckbox", setRedrawOnDrag);
  initBooleanSetting("darkmode", config.dark_mode, "darkmodeCheckbox", setDarkMode);
  initBooleanSetting("highlightpin1", config.highlight_pin1, "highlightpin1Checkbox", setHighlightPin1);

  var fields = ["checkboxes", "References"].concat(config.fields).concat(["Quantity"]);
  var hcols = JSON.parse(readStorage("hiddenColumns"));
  if (hcols === null) {
    hcols = [];
  }
  settings.hiddenColumns = hcols.filter(e => fields.includes(e));

  var cord = JSON.parse(readStorage("columnOrder"));
  if (cord === null) {
    cord = fields;
  } else {
    cord = cord.filter(e => fields.includes(e));
    if (cord.length != fields.length)
      cord = fields;
  }
  settings.columnOrder = cord;

  settings.boardRotation = readStorage("boardRotation");
  if (settings.boardRotation === null) {
    settings.boardRotation = config.board_rotation * 5;
  } else {
    settings.boardRotation = parseInt(settings.boardRotation);
  }
  document.getElementById("boardRotation").value = settings.boardRotation / 5;
  document.getElementById("rotationDegree").textContent = settings.boardRotation;
}

// Helper classes for user js callbacks.

const IBOM_EVENT_TYPES = {
  ALL: "all",
  HIGHLIGHT_EVENT: "highlightEvent",
  CHECKBOX_CHANGE_EVENT: "checkboxChangeEvent",
  BOM_BODY_CHANGE_EVENT: "bomBodyChangeEvent",
}

const EventHandler = {
  callbacks: {},
  init: function() {
    for (eventType of Object.values(IBOM_EVENT_TYPES))
      this.callbacks[eventType] = [];
  },
  registerCallback: function(eventType, callback) {
    this.callbacks[eventType].push(callback);
  },
  emitEvent: function(eventType, eventArgs) {
    event = {
      eventType: eventType,
      args: eventArgs,
    }
    var callback;
    for (callback of this.callbacks[eventType])
      callback(event);
    for (callback of this.callbacks[IBOM_EVENT_TYPES.ALL])
      callback(event);
  }
}
EventHandler.init();

///////////////////////////////////////////////

///////////////////////////////////////////////
/* PCB rendering code */

var emptyContext2d = document.createElement("canvas").getContext("2d");

function deg2rad(deg) {
  return deg * Math.PI / 180;
}

function calcFontPoint(linepoint, text, offsetx, offsety, tilt) {
  var point = [
    linepoint[0] * text.width + offsetx,
    linepoint[1] * text.height + offsety
  ];
  // This approximates pcbnew behavior with how text tilts depending on horizontal justification
  point[0] -= (linepoint[1] + 0.5 * (1 + text.justify[0])) * text.height * tilt;
  return point;
}

function drawText(ctx, text, color) {
  if ("ref" in text && !settings.renderReferences) return;
  if ("val" in text && !settings.renderValues) return;
  ctx.save();
  ctx.fillStyle = color;
  ctx.strokeStyle = color;
  ctx.lineCap = "round";
  ctx.lineJoin = "round";
  ctx.lineWidth = text.thickness;
  if ("svgpath" in text) {
    ctx.stroke(new Path2D(text.svgpath));
    ctx.restore();
    return;
  }
  ctx.translate(...text.pos);
  ctx.translate(text.thickness * 0.5, 0);
  var angle = -text.angle;
  if (text.attr.includes("mirrored")) {
    ctx.scale(-1, 1);
    angle = -angle;
  }
  var tilt = 0;
  if (text.attr.includes("italic")) {
    tilt = 0.125;
  }
  var interline = text.height * 1.5 + text.thickness;
  var txt = text.text.split("\n");
  // KiCad ignores last empty line.
  if (txt[txt.length - 1] == '') txt.pop();
  ctx.rotate(deg2rad(angle));
  var offsety = (1 - text.justify[1]) / 2 * text.height; // One line offset
  offsety -= (txt.length - 1) * (text.justify[1] + 1) / 2 * interline; // Multiline offset
  for (var i in txt) {
    var lineWidth = text.thickness + interline / 2 * tilt;
    for (var j = 0; j < txt[i].length; j++) {
      if (txt[i][j] == '\t') {
        var fourSpaces = 4 * pcbdata.font_data[' '].w * text.width;
        lineWidth += fourSpaces - lineWidth % fourSpaces;
      } else {
        if (txt[i][j] == '~') {
          j++;
          if (j == txt[i].length)
            break;
        }
        lineWidth += pcbdata.font_data[txt[i][j]].w * text.width;
      }
    }
    var offsetx = -lineWidth * (text.justify[0] + 1) / 2;
    var inOverbar = false;
    for (var j = 0; j < txt[i].length; j++) {
      if (txt[i][j] == '\t') {
        var fourSpaces = 4 * pcbdata.font_data[' '].w * text.width;
        offsetx += fourSpaces - offsetx % fourSpaces;
        continue;
      } else if (txt[i][j] == '~') {
        j++;
        if (j == txt[i].length)
          break;
        if (txt[i][j] != '~') {
          inOverbar = !inOverbar;
        }
      }
      var glyph = pcbdata.font_data[txt[i][j]];
      if (inOverbar) {
        var overbarStart = [offsetx, -text.height * 1.4 + offsety];
        var overbarEnd = [offsetx + text.width * glyph.w, overbarStart[1]];

        if (!lastHadOverbar) {
          overbarStart[0] += text.height * 1.4 * tilt;
          lastHadOverbar = true;
        }
        ctx.beginPath();
        ctx.moveTo(...overbarStart);
        ctx.lineTo(...overbarEnd);
        ctx.stroke();
      } else {
        lastHadOverbar = false;
      }
      for (var line of glyph.l) {
        ctx.beginPath();
        ctx.moveTo(...calcFontPoint(line[0], text, offsetx, offsety, tilt));
        for (var k = 1; k < line.length; k++) {
          ctx.lineTo(...calcFontPoint(line[k], text, offsetx, offsety, tilt));
        }
        ctx.stroke();
      }
      offsetx += glyph.w * text.width;
    }
    offsety += interline;
  }
  ctx.restore();
}

function drawedge(ctx, scalefactor, edge, color) {
  ctx.strokeStyle = color;
  ctx.fillStyle = color;
  ctx.lineWidth = Math.max(1 / scalefactor, edge.width);
  ctx.lineCap = "round";
  ctx.lineJoin = "round";
  if ("svgpath" in edge) {
    ctx.stroke(new Path2D(edge.svgpath));
  } else {
    ctx.beginPath();
    if (edge.type == "segment") {
      ctx.moveTo(...edge.start);
      ctx.lineTo(...edge.end);
    }
    if (edge.type == "rect") {
      ctx.moveTo(...edge.start);
      ctx.lineTo(edge.start[0], edge.end[1]);
      ctx.lineTo(...edge.end);
      ctx.lineTo(edge.end[0], edge.start[1]);
      ctx.lineTo(...edge.start);
    }
    if (edge.type == "arc") {
      ctx.arc(
        ...edge.start,
        edge.radius,
        deg2rad(edge.startangle),
        deg2rad(edge.endangle));
    }
    if (edge.type == "circle") {
      ctx.arc(
        ...edge.start,
        edge.radius,
        0, 2 * Math.PI);
      ctx.closePath();
    }
    if (edge.type == "curve") {
      ctx.moveTo(...edge.start);
      ctx.bezierCurveTo(...edge.cpa, ...edge.cpb, ...edge.end);
    }
    if("filled" in edge && edge.filled)
      ctx.fill();
    else
      ctx.stroke();
  }
}

function getChamferedRectPath(size, radius, chamfpos, chamfratio) {
  // chamfpos is a bitmask, left = 1, right = 2, bottom left = 4, bottom right = 8
  var path = new Path2D();
  var width = size[0];
  var height = size[1];
  var x = width * -0.5;
  var y = height * -0.5;
  var chamfOffset = Math.min(width, height) * chamfratio;
  path.moveTo(x, 0);
  if (chamfpos & 4) {
    path.lineTo(x, y + height - chamfOffset);
    path.lineTo(x + chamfOffset, y + height);
    path.lineTo(0, y + height);
  } else {
    path.arcTo(x, y + height, x + width, y + height, radius);
  }
  if (chamfpos & 8) {
    path.lineTo(x + width - chamfOffset, y + height);
    path.lineTo(x + width, y + height - chamfOffset);
    path.lineTo(x + width, 0);
  } else {
    path.arcTo(x + width, y + height, x + width, y, radius);
  }
  if (chamfpos & 2) {
    path.lineTo(x + width, y + chamfOffset);
    path.lineTo(x + width - chamfOffset, y);
    path.lineTo(0, y);
  } else {
    path.arcTo(x + width, y, x, y, radius);
  }
  if (chamfpos & 1) {
    path.lineTo(x + chamfOffset, y);
    path.lineTo(x, y + chamfOffset);
    path.lineTo(x, 0);
  } else {
    path.arcTo(x, y, x, y + height, radius);
  }
  path.closePath();
  return path;
}

function getOblongPath(size) {
  return getChamferedRectPath(size, Math.min(size[0], size[1]) / 2, 0, 0);
}

function getPolygonsPath(shape) {
  if (shape.path2d) {
    return shape.path2d;
  }
  if ("svgpath" in shape) {
    shape.path2d = new Path2D(shape.svgpath);
  } else {
    var path = new Path2D();
    for (var polygon of shape.polygons) {
      path.moveTo(...polygon[0]);
      for (var i = 1; i < polygon.length; i++) {
        path.lineTo(...polygon[i]);
      }
      path.closePath();
    }
    shape.path2d = path;
  }
  return shape.path2d;
}

function drawPolygonShape(ctx, scalefactor, shape, color) {
  ctx.save();
  if (!("svgpath" in shape)) {
    ctx.translate(...shape.pos);
    ctx.rotate(deg2rad(-shape.angle));
  }
  if("filled" in shape && !shape.filled) {
    ctx.strokeStyle = color;
    ctx.lineWidth = Math.max(1 / scalefactor, shape.width);
    ctx.lineCap = "round";
    ctx.lineJoin = "round";
    ctx.stroke(getPolygonsPath(shape));
  } else {
    ctx.fillStyle = color;
    ctx.fill(getPolygonsPath(shape));
  }
  ctx.restore();
}

function drawDrawing(ctx, scalefactor, drawing, color) {
  if (["segment", "arc", "circle", "curve", "rect"].includes(drawing.type)) {
    drawedge(ctx, scalefactor, drawing, color);
  } else if (drawing.type == "polygon") {
    drawPolygonShape(ctx, scalefactor, drawing, color);
  } else {
    drawText(ctx, drawing, color);
  }
}

function getCirclePath(radius) {
  var path = new Path2D();
  path.arc(0, 0, radius, 0, 2 * Math.PI);
  path.closePath();
  return path;
}

function getCachedPadPath(pad) {
  if (!pad.path2d) {
    // if path2d is not set, build one and cache it on pad object
    if (pad.shape == "rect") {
      pad.path2d = new Path2D();
      pad.path2d.rect(...pad.size.map(c => -c * 0.5), ...pad.size);
    } else if (pad.shape == "oval") {
      pad.path2d = getOblongPath(pad.size);
    } else if (pad.shape == "circle") {
      pad.path2d = getCirclePath(pad.size[0] / 2);
    } else if (pad.shape == "roundrect") {
      pad.path2d = getChamferedRectPath(pad.size, pad.radius, 0, 0);
    } else if (pad.shape == "chamfrect") {
      pad.path2d = getChamferedRectPath(pad.size, pad.radius, pad.chamfpos, pad.chamfratio)
    } else if (pad.shape == "custom") {
      pad.path2d = getPolygonsPath(pad);
    }
  }
  return pad.path2d;
}

function drawPad(ctx, pad, color, outline) {
  ctx.save();
  ctx.translate(...pad.pos);
  ctx.rotate(deg2rad(pad.angle));
  if (pad.offset) {
    ctx.translate(...pad.offset);
  }
  ctx.fillStyle = color;
  ctx.strokeStyle = color;
  var path = getCachedPadPath(pad);
  if (outline) {
    ctx.stroke(path);
  } else {
    ctx.fill(path);
  }
  ctx.restore();
}

function drawPadHole(ctx, pad, padHoleColor) {
  if (pad.type != "th") return;
  ctx.save();
  ctx.translate(...pad.pos);
  ctx.rotate(deg2rad(pad.angle));
  ctx.fillStyle = padHoleColor;
  if (pad.drillshape == "oblong") {
    ctx.fill(getOblongPath(pad.drillsize));
  } else {
    ctx.fill(getCirclePath(pad.drillsize[0] / 2));
  }
  ctx.restore();
}

function drawFootprint(ctx, layer, scalefactor, footprint, colors, highlight, outline) {
  if (highlight) {
    // draw bounding box
    if (footprint.layer == layer) {
      ctx.save();
      ctx.globalAlpha = 0.2;
      ctx.translate(...footprint.bbox.pos);
      ctx.rotate(deg2rad(-footprint.bbox.angle));
      ctx.translate(...footprint.bbox.relpos);
      ctx.fillStyle = colors.pad;
      ctx.fillRect(0, 0, ...footprint.bbox.size);
      ctx.globalAlpha = 1;
      ctx.strokeStyle = colors.pad;
      ctx.strokeRect(0, 0, ...footprint.bbox.size);
      ctx.restore();
    }
  }
  // draw drawings
  for (var drawing of footprint.drawings) {
    if (drawing.layer == layer) {
      drawDrawing(ctx, scalefactor, drawing.drawing, colors.pad);
    }
  }
  // draw pads
  if (settings.renderPads) {
    for (var pad of footprint.pads) {
      if (pad.layers.includes(layer)) {
        drawPad(ctx, pad, colors.pad, outline);
        if (pad.pin1 && settings.highlightpin1) {
          drawPad(ctx, pad, colors.outline, true);
        }
      }
    }
    for (var pad of footprint.pads) {
      drawPadHole(ctx, pad, colors.padHole);
    }
  }
}

function drawEdgeCuts(canvas, scalefactor) {
  var ctx = canvas.getContext("2d");
  var edgecolor = getComputedStyle(topmostdiv).getPropertyValue('--pcb-edge-color');
  for (var edge of pcbdata.edges) {
    drawDrawing(ctx, scalefactor, edge, edgecolor);
  }
}

function drawFootprints(canvas, layer, scalefactor, highlight) {
  var ctx = canvas.getContext("2d");
  ctx.lineWidth = 3 / scalefactor;
  var style = getComputedStyle(topmostdiv);

  var colors = {
    pad: style.getPropertyValue('--pad-color'),
    padHole: style.getPropertyValue('--pad-hole-color'),
    outline: style.getPropertyValue('--pin1-outline-color'),
  }

  for (var i = 0; i < pcbdata.footprints.length; i++) {
    var mod = pcbdata.footprints[i];
    var outline = settings.renderDnpOutline && pcbdata.bom.skipped.includes(i);
    var h = highlightedFootprints.includes(i);
    var d = markedFootprints.has(i);
    if (highlight) {
      if(h && d) {
        colors.pad = style.getPropertyValue('--pad-color-highlight-both');
        colors.outline = style.getPropertyValue('--pin1-outline-color-highlight-both');
      } else if (h) {
        colors.pad = style.getPropertyValue('--pad-color-highlight');
        colors.outline = style.getPropertyValue('--pin1-outline-color-highlight');
      } else if (d) {
        colors.pad = style.getPropertyValue('--pad-color-highlight-marked');
        colors.outline = style.getPropertyValue('--pin1-outline-color-highlight-marked');
      }
    }
    if( h || d || !highlight) {
      drawFootprint(ctx, layer, scalefactor, mod, colors, highlight, outline);
    }
  }
}

function drawBgLayer(layername, canvas, layer, scalefactor, edgeColor, polygonColor, textColor) {
  var ctx = canvas.getContext("2d");
  for (var d of pcbdata.drawings[layername][layer]) {
    if (["segment", "arc", "circle", "curve", "rect"].includes(d.type)) {
      drawedge(ctx, scalefactor, d, edgeColor);
    } else if (d.type == "polygon") {
      drawPolygonShape(ctx, scalefactor, d, polygonColor);
    } else {
      drawText(ctx, d, textColor);
    }
  }
}

function drawTracks(canvas, layer, color, highlight) {
  ctx = canvas.getContext("2d");
  ctx.strokeStyle = color;
  ctx.lineCap = "round";
  for (var track of pcbdata.tracks[layer]) {
    if (highlight && highlightedNet != track.net) continue;
    ctx.lineWidth = track.width;
    ctx.beginPath();
    if ('radius' in track) {
      ctx.arc(
        ...track.center,
        track.radius,
        deg2rad(track.startangle),
        deg2rad(track.endangle));
    } else {
      ctx.moveTo(...track.start);
      ctx.lineTo(...track.end);
    }
    ctx.stroke();
  }
}

function drawZones(canvas, layer, color, highlight) {
  ctx = canvas.getContext("2d");
  ctx.strokeStyle = color;
  ctx.fillStyle = color;
  ctx.lineJoin = "round";
  for (var zone of pcbdata.zones[layer]) {
    if (!zone.path2d) {
      zone.path2d = getPolygonsPath(zone);
    }
    if (highlight && highlightedNet != zone.net) continue;
    ctx.fill(zone.path2d);
    if (zone.width > 0) {
      ctx.lineWidth = zone.width;
      ctx.stroke(zone.path2d);
    }
  }
}

function clearCanvas(canvas, color = null) {
  var ctx = canvas.getContext("2d");
  ctx.save();
  ctx.setTransform(1, 0, 0, 1, 0, 0);
  if (color) {
    ctx.fillStyle = color;
    ctx.fillRect(0, 0, canvas.width, canvas.height);
  } else {
    if (!window.matchMedia("print").matches)
      ctx.clearRect(0, 0, canvas.width, canvas.height);
  }
  ctx.restore();
}

function drawNets(canvas, layer, highlight) {
  var style = getComputedStyle(topmostdiv);
  if (settings.renderTracks) {
    var trackColor = style.getPropertyValue(highlight ? '--track-color-highlight' : '--track-color');
    drawTracks(canvas, layer, trackColor, highlight);
  }
  if (settings.renderZones) {
    var zoneColor = style.getPropertyValue(highlight ? '--zone-color-highlight' : '--zone-color');
    drawZones(canvas, layer, zoneColor, highlight);
  }
  if (highlight && settings.renderPads) {
    var padColor = style.getPropertyValue('--pad-color-highlight');
    var padHoleColor = style.getPropertyValue('--pad-hole-color');
    var ctx = canvas.getContext("2d");
    for (var footprint of pcbdata.footprints) {
      // draw pads
      var padDrawn = false;
      for (var pad of footprint.pads) {
        if (highlightedNet != pad.net) continue;
        if (pad.layers.includes(layer)) {
          drawPad(ctx, pad, padColor, false);
          padDrawn = true;
        }
      }
      if (padDrawn) {
        // redraw all pad holes because some pads may overlap
        for (var pad of footprint.pads) {
          drawPadHole(ctx, pad, padHoleColor);
        }
      }
    }
  }
}

function drawHighlightsOnLayer(canvasdict, clear = true) {
  if (clear) {
    clearCanvas(canvasdict.highlight);
  }
  if (markedFootprints.size > 0 || highlightedFootprints.length > 0) {
    drawFootprints(canvasdict.highlight, canvasdict.layer,
      canvasdict.transform.s * canvasdict.transform.zoom, true);
  }
  if (highlightedNet !== null) {
    drawNets(canvasdict.highlight, canvasdict.layer, true);
  }
}

function drawHighlights() {
  drawHighlightsOnLayer(allcanvas.front);
  drawHighlightsOnLayer(allcanvas.back);
}

function drawBackground(canvasdict, clear = true) {
  if (clear) {
    clearCanvas(canvasdict.bg);
    clearCanvas(canvasdict.fab);
    clearCanvas(canvasdict.silk);
  }

  drawNets(canvasdict.bg, canvasdict.layer, false);
  drawFootprints(canvasdict.bg, canvasdict.layer,
    canvasdict.transform.s * canvasdict.transform.zoom, false);

  drawEdgeCuts(canvasdict.bg, canvasdict.transform.s * canvasdict.transform.zoom);

  var style = getComputedStyle(topmostdiv);
  var edgeColor = style.getPropertyValue('--silkscreen-edge-color');
  var polygonColor = style.getPropertyValue('--silkscreen-polygon-color');
  var textColor = style.getPropertyValue('--silkscreen-text-color');
  if (settings.renderSilkscreen) {
    drawBgLayer(
      "silkscreen", canvasdict.silk, canvasdict.layer,
      canvasdict.transform.s * canvasdict.transform.zoom,
      edgeColor, polygonColor, textColor);
  }
  edgeColor = style.getPropertyValue('--fabrication-edge-color');
  polygonColor = style.getPropertyValue('--fabrication-polygon-color');
  textColor = style.getPropertyValue('--fabrication-text-color');
  if (settings.renderFabrication) {
    drawBgLayer(
      "fabrication", canvasdict.fab, canvasdict.layer,
      canvasdict.transform.s * canvasdict.transform.zoom,
      edgeColor, polygonColor, textColor);
  }
}

function prepareCanvas(canvas, flip, transform) {
  var ctx = canvas.getContext("2d");
  ctx.setTransform(1, 0, 0, 1, 0, 0);
  var fontsize = 1.55;
  ctx.scale(transform.zoom, transform.zoom);
  ctx.translate(transform.panx, transform.pany);
  if (flip) {
    ctx.scale(-1, 1);
  }
  ctx.translate(transform.x, transform.y);
  ctx.rotate(deg2rad(settings.boardRotation));
  ctx.scale(transform.s, transform.s);
}

function prepareLayer(canvasdict) {
  var flip = (canvasdict.layer == "B");
  for (var c of ["bg", "fab", "silk", "highlight"]) {
    prepareCanvas(canvasdict[c], flip, canvasdict.transform);
  }
}

function rotateVector(v, angle) {
  angle = deg2rad(angle);
  return [
    v[0] * Math.cos(angle) - v[1] * Math.sin(angle),
    v[0] * Math.sin(angle) + v[1] * Math.cos(angle)
  ];
}

function applyRotation(bbox) {
  var corners = [
    [bbox.minx, bbox.miny],
    [bbox.minx, bbox.maxy],
    [bbox.maxx, bbox.miny],
    [bbox.maxx, bbox.maxy],
  ];
  corners = corners.map((v) => rotateVector(v, settings.boardRotation));
  return {
    minx: corners.reduce((a, v) => Math.min(a, v[0]), Infinity),
    miny: corners.reduce((a, v) => Math.min(a, v[1]), Infinity),
    maxx: corners.reduce((a, v) => Math.max(a, v[0]), -Infinity),
    maxy: corners.reduce((a, v) => Math.max(a, v[1]), -Infinity),
  }
}

function recalcLayerScale(layerdict, width, height) {
  var bbox = applyRotation(pcbdata.edges_bbox);
  var scalefactor = 0.98 * Math.min(
    width / (bbox.maxx - bbox.minx),
    height / (bbox.maxy - bbox.miny)
  );
  if (scalefactor < 0.1) {
    scalefactor = 1;
  }
  layerdict.transform.s = scalefactor;
  var flip = (layerdict.layer == "B");
  if (flip) {
    layerdict.transform.x = -((bbox.maxx + bbox.minx) * scalefactor + width) * 0.5;
  } else {
    layerdict.transform.x = -((bbox.maxx + bbox.minx) * scalefactor - width) * 0.5;
  }
  layerdict.transform.y = -((bbox.maxy + bbox.miny) * scalefactor - height) * 0.5;
  for (var c of ["bg", "fab", "silk", "highlight"]) {
    canvas = layerdict[c];
    canvas.width = width;
    canvas.height = height;
    canvas.style.width = (width / devicePixelRatio) + "px";
    canvas.style.height = (height / devicePixelRatio) + "px";
  }
}

function redrawCanvas(layerdict) {
  prepareLayer(layerdict);
  drawBackground(layerdict);
  drawHighlightsOnLayer(layerdict);
}

function resizeCanvas(layerdict) {
  var canvasdivid = {
    "F": "frontcanvas",
    "B": "backcanvas"
  } [layerdict.layer];
  var width = document.getElementById(canvasdivid).clientWidth * devicePixelRatio;
  var height = document.getElementById(canvasdivid).clientHeight * devicePixelRatio;
  recalcLayerScale(layerdict, width, height);
  redrawCanvas(layerdict);
}

function resizeAll() {
  resizeCanvas(allcanvas.front);
  resizeCanvas(allcanvas.back);
}

function pointWithinDistanceToSegment(x, y, x1, y1, x2, y2, d) {
  var A = x - x1;
  var B = y - y1;
  var C = x2 - x1;
  var D = y2 - y1;

  var dot = A * C + B * D;
  var len_sq = C * C + D * D;
  var dx, dy;
  if (len_sq == 0) {
    // start and end of the segment coincide
    dx = x - x1;
    dy = y - y1;
  } else {
    var param = dot / len_sq;
    var xx, yy;
    if (param < 0) {
      xx = x1;
      yy = y1;
    } else if (param > 1) {
      xx = x2;
      yy = y2;
    } else {
      xx = x1 + param * C;
      yy = y1 + param * D;
    }
    dx = x - xx;
    dy = y - yy;
  }
  return dx * dx + dy * dy <= d * d;
}

function modulo(n, mod) {
  return ((n % mod) + mod) % mod;
}

function pointWithinDistanceToArc(x, y, xc, yc, radius, startangle, endangle, d) {
  var dx = x - xc;
  var dy = y - yc;
  var r_sq = dx * dx + dy * dy;
  var rmin = Math.max(0, radius - d);
  var rmax = radius + d;

  if (r_sq < rmin * rmin || r_sq > rmax * rmax)
    return false;

  var angle1 = modulo(deg2rad(startangle), 2 * Math.PI);
  var dx1 = xc + radius * Math.cos(angle1) - x;
  var dy1 = yc + radius * Math.sin(angle1) - y;
  if (dx1 * dx1 + dy1 * dy1 <= d * d)
    return true;

  var angle2 = modulo(deg2rad(endangle), 2 * Math.PI);
  var dx2 = xc + radius * Math.cos(angle2) - x;
  var dy2 = yc + radius * Math.sin(angle2) - y;
  if (dx2 * dx2 + dy2 * dy2 <= d * d)
    return true;

  var angle = modulo(Math.atan2(dy, dx), 2 * Math.PI);
  if (angle1 > angle2)
    return (angle >= angle2 || angle <= angle1);
  else
    return (angle >= angle1 && angle <= angle2);
}

function pointWithinPad(x, y, pad) {
  var v = [x - pad.pos[0], y - pad.pos[1]];
  v = rotateVector(v, -pad.angle);
  if (pad.offset) {
    v[0] -= pad.offset[0];
    v[1] -= pad.offset[1];
  }
  return emptyContext2d.isPointInPath(getCachedPadPath(pad), ...v);
}

function netHitScan(layer, x, y) {
  // Check track segments
  if (settings.renderTracks && pcbdata.tracks) {
    for (var track of pcbdata.tracks[layer]) {
      if ('radius' in track) {
        if (pointWithinDistanceToArc(x, y, ...track.center, track.radius, track.startangle, track.endangle, track.width / 2)) {
          return track.net;
        }
      } else {
        if (pointWithinDistanceToSegment(x, y, ...track.start, ...track.end, track.width / 2)) {
          return track.net;
        }
      }
    }
  }
  // Check pads
  if (settings.renderPads) {
    for (var footprint of pcbdata.footprints) {
      for (var pad of footprint.pads) {
        if (pad.layers.includes(layer) && pointWithinPad(x, y, pad)) {
          return pad.net;
        }
      }
    }
  }
  return null;
}

function pointWithinFootprintBbox(x, y, bbox) {
  var v = [x - bbox.pos[0], y - bbox.pos[1]];
  v = rotateVector(v, bbox.angle);
  return bbox.relpos[0] <= v[0] && v[0] <= bbox.relpos[0] + bbox.size[0] &&
    bbox.relpos[1] <= v[1] && v[1] <= bbox.relpos[1] + bbox.size[1];
}

function bboxHitScan(layer, x, y) {
  var result = [];
  for (var i = 0; i < pcbdata.footprints.length; i++) {
    var footprint = pcbdata.footprints[i];
    if (footprint.layer == layer) {
      if (pointWithinFootprintBbox(x, y, footprint.bbox)) {
        result.push(i);
      }
    }
  }
  return result;
}

function handlePointerDown(e, layerdict) {
  if (e.button != 0 && e.button != 1) {
    return;
  }
  e.preventDefault();
  e.stopPropagation();

  if (!e.hasOwnProperty("offsetX")) {
    // The polyfill doesn't set this properly
    e.offsetX = e.pageX - e.currentTarget.offsetLeft;
    e.offsetY = e.pageY - e.currentTarget.offsetTop;
  }

  layerdict.pointerStates[e.pointerId] = {
    distanceTravelled: 0,
    lastX: e.offsetX,
    lastY: e.offsetY,
    downTime: Date.now(),
  };
}

function handleMouseClick(e, layerdict) {
  if (!e.hasOwnProperty("offsetX")) {
    // The polyfill doesn't set this properly
    e.offsetX = e.pageX - e.currentTarget.offsetLeft;
    e.offsetY = e.pageY - e.currentTarget.offsetTop;
  }

  var x = e.offsetX;
  var y = e.offsetY;
  var t = layerdict.transform;
  if (layerdict.layer == "B") {
    x = (devicePixelRatio * x / t.zoom - t.panx + t.x) / -t.s;
  } else {
    x = (devicePixelRatio * x / t.zoom - t.panx - t.x) / t.s;
  }
  y = (devicePixelRatio * y / t.zoom - t.y - t.pany) / t.s;
  var v = rotateVector([x, y], -settings.boardRotation);
  if ("nets" in pcbdata) {
    var net = netHitScan(layerdict.layer, ...v);
    if (net !== highlightedNet) {
      netClicked(net);
    }
  }
  if (highlightedNet === null) {
    var footprints = bboxHitScan(layerdict.layer, ...v);
    if (footprints.length > 0) {
      footprintsClicked(footprints);
    }
  }
}

function handlePointerLeave(e, layerdict) {
  e.preventDefault();
  e.stopPropagation();

  if (!settings.redrawOnDrag) {
    redrawCanvas(layerdict);
  }

  delete layerdict.pointerStates[e.pointerId];
}

function resetTransform(layerdict) {
  layerdict.transform.panx = 0;
  layerdict.transform.pany = 0;
  layerdict.transform.zoom = 1;
  redrawCanvas(layerdict);
}

function handlePointerUp(e, layerdict) {
  if (!e.hasOwnProperty("offsetX")) {
    // The polyfill doesn't set this properly
    e.offsetX = e.pageX - e.currentTarget.offsetLeft;
    e.offsetY = e.pageY - e.currentTarget.offsetTop;
  }

  e.preventDefault();
  e.stopPropagation();

  if (e.button == 2) {
    // Reset pan and zoom on right click.
    resetTransform(layerdict);
    layerdict.anotherPointerTapped = false;
    return;
  }

  // We haven't necessarily had a pointermove event since the interaction started, so make sure we update this now
  var ptr = layerdict.pointerStates[e.pointerId];
  ptr.distanceTravelled += Math.abs(e.offsetX - ptr.lastX) + Math.abs(e.offsetY - ptr.lastY);

  if (e.button == 0 && ptr.distanceTravelled < 10 && Date.now() - ptr.downTime <= 500) {
    if (Object.keys(layerdict.pointerStates).length == 1) {
      if (layerdict.anotherPointerTapped) {
        // This is the second pointer coming off of a two-finger tap
        resetTransform(layerdict);
      } else {
        // This is just a regular tap
        handleMouseClick(e, layerdict);
      }
      layerdict.anotherPointerTapped = false;
    } else {
      // This is the first finger coming off of what could become a two-finger tap
      layerdict.anotherPointerTapped = true;
    }
  } else {
    if (!settings.redrawOnDrag) {
      redrawCanvas(layerdict);
    }
    layerdict.anotherPointerTapped = false;
  }

  delete layerdict.pointerStates[e.pointerId];
}

function handlePointerMove(e, layerdict) {
  if (!layerdict.pointerStates.hasOwnProperty(e.pointerId)) {
    return;
  }
  e.preventDefault();
  e.stopPropagation();

  if (!e.hasOwnProperty("offsetX")) {
    // The polyfill doesn't set this properly
    e.offsetX = e.pageX - e.currentTarget.offsetLeft;
    e.offsetY = e.pageY - e.currentTarget.offsetTop;
  }

  var thisPtr = layerdict.pointerStates[e.pointerId];

  var dx = e.offsetX - thisPtr.lastX;
  var dy = e.offsetY - thisPtr.lastY;

  // If this number is low on pointer up, we count the action as a click
  thisPtr.distanceTravelled += Math.abs(dx) + Math.abs(dy);

  if (Object.keys(layerdict.pointerStates).length == 1) {
    // This is a simple drag
    layerdict.transform.panx += devicePixelRatio * dx / layerdict.transform.zoom;
    layerdict.transform.pany += devicePixelRatio * dy / layerdict.transform.zoom;
  } else if (Object.keys(layerdict.pointerStates).length == 2) {
    var otherPtr = Object.values(layerdict.pointerStates).filter((ptr) => ptr != thisPtr)[0];

    var oldDist = Math.sqrt(Math.pow(thisPtr.lastX - otherPtr.lastX, 2) + Math.pow(thisPtr.lastY - otherPtr.lastY, 2));
    var newDist = Math.sqrt(Math.pow(e.offsetX - otherPtr.lastX, 2) + Math.pow(e.offsetY - otherPtr.lastY, 2));

    var scaleFactor = newDist / oldDist;

    if (scaleFactor != NaN) {
      layerdict.transform.zoom *= scaleFactor;

      var zoomd = (1 - scaleFactor) / layerdict.transform.zoom;
      layerdict.transform.panx += devicePixelRatio * otherPtr.lastX * zoomd;
      layerdict.transform.pany += devicePixelRatio * otherPtr.lastY * zoomd;
    }
  }

  thisPtr.lastX = e.offsetX;
  thisPtr.lastY = e.offsetY;

  if (settings.redrawOnDrag) {
    redrawCanvas(layerdict);
  }
}

function handleMouseWheel(e, layerdict) {
  e.preventDefault();
  e.stopPropagation();
  var t = layerdict.transform;
  var wheeldelta = e.deltaY;
  if (e.deltaMode == 1) {
    // FF only, scroll by lines
    wheeldelta *= 30;
  } else if (e.deltaMode == 2) {
    wheeldelta *= 300;
  }
  var m = Math.pow(1.1, -wheeldelta / 40);
  // Limit amount of zoom per tick.
  if (m > 2) {
    m = 2;
  } else if (m < 0.5) {
    m = 0.5;
  }
  t.zoom *= m;
  var zoomd = (1 - m) / t.zoom;
  t.panx += devicePixelRatio * e.offsetX * zoomd;
  t.pany += devicePixelRatio * e.offsetY * zoomd;
  redrawCanvas(layerdict);
}

function addMouseHandlers(div, layerdict) {
  div.addEventListener("pointerdown", function(e) {
    handlePointerDown(e, layerdict);
  });
  div.addEventListener("pointermove", function(e) {
    handlePointerMove(e, layerdict);
  });
  div.addEventListener("pointerup", function(e) {
    handlePointerUp(e, layerdict);
  });
  var pointerleave = function(e) {
    handlePointerLeave(e, layerdict);
  }
  div.addEventListener("pointercancel", pointerleave);
  div.addEventListener("pointerleave", pointerleave);
  div.addEventListener("pointerout", pointerleave);

  div.onwheel = function(e) {
    handleMouseWheel(e, layerdict);
  }
  for (var element of [div, layerdict.bg, layerdict.fab, layerdict.silk, layerdict.highlight]) {
    element.addEventListener("contextmenu", function(e) {
      e.preventDefault();
    }, false);
  }
}

function setRedrawOnDrag(value) {
  settings.redrawOnDrag = value;
  writeStorage("redrawOnDrag", value);
}

function setBoardRotation(value) {
  settings.boardRotation = value * 5;
  writeStorage("boardRotation", settings.boardRotation);
  document.getElementById("rotationDegree").textContent = settings.boardRotation;
  resizeAll();
}

function initRender() {
  allcanvas = {
    front: {
      transform: {
        x: 0,
        y: 0,
        s: 1,
        panx: 0,
        pany: 0,
        zoom: 1,
      },
      pointerStates: {},
      anotherPointerTapped: false,
      bg: document.getElementById("F_bg"),
      fab: document.getElementById("F_fab"),
      silk: document.getElementById("F_slk"),
      highlight: document.getElementById("F_hl"),
      layer: "F",
    },
    back: {
      transform: {
        x: 0,
        y: 0,
        s: 1,
        panx: 0,
        pany: 0,
        zoom: 1,
      },
      pointerStates: {},
      anotherPointerTapped: false,
      bg: document.getElementById("B_bg"),
      fab: document.getElementById("B_fab"),
      silk: document.getElementById("B_slk"),
      highlight: document.getElementById("B_hl"),
      layer: "B",
    }
  };
  addMouseHandlers(document.getElementById("frontcanvas"), allcanvas.front);
  addMouseHandlers(document.getElementById("backcanvas"), allcanvas.back);
}

///////////////////////////////////////////////

///////////////////////////////////////////////
/*
 * Table reordering via Drag'n'Drop
 * Inspired by: https://htmldom.dev/drag-and-drop-table-column
 */

function setBomHandlers() {

  const bom = document.getElementById('bomtable');

  let dragName;
  let placeHolderElements;
  let draggingElement;
  let forcePopulation;
  let xOffset;
  let yOffset;
  let wasDragged;

  const mouseUpHandler = function(e) {
    // Delete dragging element
    draggingElement.remove();

    // Make BOM selectable again
    bom.style.removeProperty("userSelect");

    // Remove listeners
    document.removeEventListener('mousemove', mouseMoveHandler);
    document.removeEventListener('mouseup', mouseUpHandler);

    if (wasDragged) {
      // Redraw whole BOM
      populateBomTable();
    }
  }

  const mouseMoveHandler = function(e) {
    // Notice the dragging
    wasDragged = true;

    // Make the dragged element visible
    draggingElement.style.removeProperty("display");

    // Set elements position to mouse position
    draggingElement.style.left = `${e.screenX - xOffset}px`;
    draggingElement.style.top = `${e.screenY - yOffset}px`;

    // Forced redrawing of BOM table
    if (forcePopulation) {
      forcePopulation = false;
      // Copy array
      phe = Array.from(placeHolderElements);
      // populate BOM table again
      populateBomHeader(dragName, phe);
      populateBomBody(dragName, phe);
    }

    // Set up array of hidden columns
    var hiddenColumns = Array.from(settings.hiddenColumns);
    // In the ungrouped mode, quantity don't exist
    if (settings.bommode === "ungrouped")
      hiddenColumns.push("Quantity");
    // If no checkbox fields can be found, we consider them hidden
    if (settings.checkboxes.length == 0)
      hiddenColumns.push("checkboxes");

    // Get table headers and group them into checkboxes, extrafields and normal headers
    const bh = document.getElementById("bomhead");
    headers = Array.from(bh.querySelectorAll("th"))
    headers.shift() // numCol is not part of the columnOrder
    headerGroups = []
    lastCompoundClass = null;
    for (i = 0; i < settings.columnOrder.length; i++) {
      cElem = settings.columnOrder[i];
      if (hiddenColumns.includes(cElem)) {
        // Hidden columns appear as a dummy element
        headerGroups.push([]);
        continue;
      }
      elem = headers.filter(e => getColumnOrderName(e) === cElem)[0];
      if (elem.classList.contains("bom-checkbox")) {
        if (lastCompoundClass === "bom-checkbox") {
          cbGroup = headerGroups.pop();
          cbGroup.push(elem);
          headerGroups.push(cbGroup);
        } else {
          lastCompoundClass = "bom-checkbox";
          headerGroups.push([elem])
        }
      } else {
        headerGroups.push([elem])
      }
    }

    // Copy settings.columnOrder
    var columns = Array.from(settings.columnOrder)

    // Set up array with indices of hidden columns
    var hiddenIndices = hiddenColumns.map(e => settings.columnOrder.indexOf(e));
    var dragIndex = columns.indexOf(dragName);
    var swapIndex = dragIndex;
    var swapDone = false;

    // Check if the current dragged element is swapable with the left or right element
    if (dragIndex > 0) {
      // Get left headers boundingbox
      swapIndex = dragIndex - 1;
      while (hiddenIndices.includes(swapIndex) && swapIndex > 0)
        swapIndex--;
      if (!hiddenIndices.includes(swapIndex)) {
        box = getBoundingClientRectFromMultiple(headerGroups[swapIndex]);
        if (e.clientX < box.left + window.scrollX + (box.width / 2)) {
          swapElement = columns[dragIndex];
          columns.splice(dragIndex, 1);
          columns.splice(swapIndex, 0, swapElement);
          forcePopulation = true;
          swapDone = true;
        }
      }
    }
    if ((!swapDone) && dragIndex < headerGroups.length - 1) {
      // Get right headers boundingbox
      swapIndex = dragIndex + 1;
      while (hiddenIndices.includes(swapIndex))
        swapIndex++;
      if (swapIndex < headerGroups.length) {
        box = getBoundingClientRectFromMultiple(headerGroups[swapIndex]);
        if (e.clientX > box.left + window.scrollX + (box.width / 2)) {
          swapElement = columns[dragIndex];
          columns.splice(dragIndex, 1);
          columns.splice(swapIndex, 0, swapElement);
          forcePopulation = true;
          swapDone = true;
        }
      }
    }

    // Write back change to storage
    if (swapDone) {
      settings.columnOrder = columns
      writeStorage("columnOrder", JSON.stringify(columns));
    }

  }

  const mouseDownHandler = function(e) {
    var target = e.target;
    if (target.tagName.toLowerCase() != "td")
      target = target.parentElement;

    // Used to check if a dragging has ever happened
    wasDragged = false;

    // Create new element which will be displayed as the dragged column
    draggingElement = document.createElement("div")
    draggingElement.classList.add("dragging");
    draggingElement.style.display = "none";
    draggingElement.style.position = "absolute";
    draggingElement.style.overflow = "hidden";

    // Get bomhead and bombody elements
    const bh = document.getElementById("bomhead");
    const bb = document.getElementById("bombody");

    // Get all compound headers for the current column
    var compoundHeaders;
    if (target.classList.contains("bom-checkbox")) {
      compoundHeaders = Array.from(bh.querySelectorAll("th.bom-checkbox"));
    } else {
      compoundHeaders = [target];
    }

    // Create new table which will display the column
    var newTable = document.createElement("table");
    newTable.classList.add("bom");
    newTable.style.background = "white";
    draggingElement.append(newTable);

    // Create new header element
    var newHeader = document.createElement("thead");
    newTable.append(newHeader);

    // Set up array for storing all placeholder elements
    placeHolderElements = [];

    // Add all compound headers to the new thead element and placeholders
    compoundHeaders.forEach(function(h) {
      clone = cloneElementWithDimensions(h);
      newHeader.append(clone);
      placeHolderElements.push(clone);
    });

    // Create new body element
    var newBody = document.createElement("tbody");
    newTable.append(newBody);

    // Get indices for compound headers
    var idxs = compoundHeaders.map(e => getBomTableHeaderIndex(e));

    // For each row in the BOM body...
    var rows = bb.querySelectorAll("tr");
    rows.forEach(function(row) {
      // ..get the cells for the compound column
      const tds = row.querySelectorAll("td");
      var copytds = idxs.map(i => tds[i]);
      // Add them to the new element and the placeholders
      var newRow = document.createElement("tr");
      copytds.forEach(function(td) {
        clone = cloneElementWithDimensions(td);
        newRow.append(clone);
        placeHolderElements.push(clone);
      });
      newBody.append(newRow);
    });

    // Compute width for compound header
    var width = compoundHeaders.reduce((acc, x) => acc + x.clientWidth, 0);
    draggingElement.style.width = `${width}px`;

    // Insert the new dragging element and disable selection on BOM
    bom.insertBefore(draggingElement, null);
    bom.style.userSelect = "none";

    // Determine the mouse position offset
    xOffset = e.screenX - compoundHeaders.reduce((acc, x) => Math.min(acc, x.offsetLeft), compoundHeaders[0].offsetLeft);
    yOffset = e.screenY - compoundHeaders[0].offsetTop;

    // Get name for the column in settings.columnOrder
    dragName = getColumnOrderName(target);

    // Change text and class for placeholder elements
    placeHolderElements = placeHolderElements.map(function(e) {
      newElem = cloneElementWithDimensions(e);
      newElem.textContent = "";
      newElem.classList.add("placeholder");
      return newElem;
    });

    // On next mouse move, the whole BOM needs to be redrawn to show the placeholders
    forcePopulation = true;

    // Add listeners for move and up on mouse
    document.addEventListener('mousemove', mouseMoveHandler);
    document.addEventListener('mouseup', mouseUpHandler);
  }

  // In netlist mode, there is nothing to reorder
  if (settings.bommode === "netlist")
    return;

  // Add mouseDownHandler to every column except the numCol
  bom.querySelectorAll("th")
    .forEach(function(head) {
      if (!head.classList.contains("numCol")) {
        head.onmousedown = mouseDownHandler;
      }
    });

}

function getBoundingClientRectFromMultiple(elements) {
  var elems = Array.from(elements);

  if (elems.length == 0)
    return null;

  var box = elems.shift()
    .getBoundingClientRect();

  elems.forEach(function(elem) {
    var elembox = elem.getBoundingClientRect();
    box.left = Math.min(elembox.left, box.left);
    box.top = Math.min(elembox.top, box.top);
    box.width += elembox.width;
    box.height = Math.max(elembox.height, box.height);
  });

  return box;
}

function cloneElementWithDimensions(elem) {
  var newElem = elem.cloneNode(true);
  newElem.style.height = window.getComputedStyle(elem).height;
  newElem.style.width = window.getComputedStyle(elem).width;
  return newElem;
}

function getBomTableHeaderIndex(elem) {
  const bh = document.getElementById('bomhead');
  const ths = Array.from(bh.querySelectorAll("th"));
  return ths.indexOf(elem);
}

function getColumnOrderName(elem) {
  var cname = elem.getAttribute("col_name");
  if (cname === "bom-checkbox")
    return "checkboxes";
  else
    return cname;
}

function resizableGrid(tablehead) {
  var cols = tablehead.firstElementChild.children;
  var rowWidth = tablehead.offsetWidth;

  for (var i = 1; i < cols.length; i++) {
    if (cols[i].classList.contains("bom-checkbox"))
      continue;
    cols[i].style.width = ((cols[i].clientWidth - paddingDiff(cols[i])) * 100 / rowWidth) + '%';
  }

  for (var i = 1; i < cols.length - 1; i++) {
    var div = document.createElement('div');
    div.className = "column-width-handle";
    cols[i].appendChild(div);
    setListeners(div);
  }

  function setListeners(div) {
    var startX, curCol, nxtCol, curColWidth, nxtColWidth, rowWidth;

    div.addEventListener('mousedown', function(e) {
      e.preventDefault();
      e.stopPropagation();

      curCol = e.target.parentElement;
      nxtCol = curCol.nextElementSibling;
      startX = e.pageX;

      var padding = paddingDiff(curCol);

      rowWidth = curCol.parentElement.offsetWidth;
      curColWidth = curCol.clientWidth - padding;
      nxtColWidth = nxtCol.clientWidth - padding;
    });

    document.addEventListener('mousemove', function(e) {
      if (startX) {
        var diffX = e.pageX - startX;
        diffX = -Math.min(-diffX, curColWidth - 20);
        diffX = Math.min(diffX, nxtColWidth - 20);

        curCol.style.width = ((curColWidth + diffX) * 100 / rowWidth) + '%';
        nxtCol.style.width = ((nxtColWidth - diffX) * 100 / rowWidth) + '%';
        console.log(`${curColWidth + nxtColWidth} ${(curColWidth + diffX) * 100 / rowWidth + (nxtColWidth - diffX) * 100 / rowWidth}`);
      }
    });

    document.addEventListener('mouseup', function(e) {
      curCol = undefined;
      nxtCol = undefined;
      startX = undefined;
      nxtColWidth = undefined;
      curColWidth = undefined
    });
  }

  function paddingDiff(col) {

    if (getStyleVal(col, 'box-sizing') == 'border-box') {
      return 0;
    }

    var padLeft = getStyleVal(col, 'padding-left');
    var padRight = getStyleVal(col, 'padding-right');
    return (parseInt(padLeft) + parseInt(padRight));

  }

  function getStyleVal(elm, css) {
    return (window.getComputedStyle(elm, null).getPropertyValue(css))
  }
}

///////////////////////////////////////////////

///////////////////////////////////////////////
/* DOM manipulation and misc code */

var bomsplit;
var canvassplit;
var initDone = false;
var bomSortFunction = null;
var currentSortColumn = null;
var currentSortOrder = null;
var currentHighlightedRowId;
var highlightHandlers = [];
var footprintIndexToHandler = {};
var netsToHandler = {};
var markedFootprints = new Set();
var highlightedFootprints = [];
var highlightedNet = null;
var lastClicked;

function dbg(html) {
  dbgdiv.innerHTML = html;
}

function redrawIfInitDone() {
  if (initDone) {
    redrawCanvas(allcanvas.front);
    redrawCanvas(allcanvas.back);
  }
}

function padsVisible(value) {
  writeStorage("padsVisible", value);
  settings.renderPads = value;
  redrawIfInitDone();
}

function referencesVisible(value) {
  writeStorage("referencesVisible", value);
  settings.renderReferences = value;
  redrawIfInitDone();
}

function valuesVisible(value) {
  writeStorage("valuesVisible", value);
  settings.renderValues = value;
  redrawIfInitDone();
}

function tracksVisible(value) {
  writeStorage("tracksVisible", value);
  settings.renderTracks = value;
  redrawIfInitDone();
}

function zonesVisible(value) {
  writeStorage("zonesVisible", value);
  settings.renderZones = value;
  redrawIfInitDone();
}

function dnpOutline(value) {
  writeStorage("dnpOutline", value);
  settings.renderDnpOutline = value;
  redrawIfInitDone();
}

function setDarkMode(value) {
  if (value) {
    topmostdiv.classList.add("dark");
  } else {
    topmostdiv.classList.remove("dark");
  }
  writeStorage("darkmode", value);
  settings.darkMode = value;
  redrawIfInitDone();
}

function setShowBOMColumn(field, value) {
  if (field === "references") {
    var rl = document.getElementById("reflookup");
    rl.disabled = !value;
    if (!value) {
      rl.value = "";
      updateRefLookup("");
    }
  }

  var n = settings.hiddenColumns.indexOf(field);
  if (value) {
    if (n != -1) {
      settings.hiddenColumns.splice(n, 1);
    }
  } else {
    if (n == -1) {
      settings.hiddenColumns.push(field);
    }
  }

  writeStorage("hiddenColumns", JSON.stringify(settings.hiddenColumns));

  if (initDone) {
    populateBomTable();
  }

  redrawIfInitDone();
}


function setFullscreen(value) {
  if (value) {
    document.documentElement.requestFullscreen();
  } else {
    document.exitFullscreen();
  }
}

function fabricationVisible(value) {
  writeStorage("fabricationVisible", value);
  settings.renderFabrication = value;
  redrawIfInitDone();
}

function silkscreenVisible(value) {
  writeStorage("silkscreenVisible", value);
  settings.renderSilkscreen = value;
  redrawIfInitDone();
}

function setHighlightPin1(value) {
  writeStorage("highlightpin1", value);
  settings.highlightpin1 = value;
  redrawIfInitDone();
}

function getStoredCheckboxRefs(checkbox) {
  function convert(ref) {
    var intref = parseInt(ref);
    if (isNaN(intref)) {
      for (var i = 0; i < pcbdata.footprints.length; i++) {
        if (pcbdata.footprints[i].ref == ref) {
          return i;
        }
      }
      return -1;
    } else {
      return intref;
    }
  }
  if (!(checkbox in settings.checkboxStoredRefs)) {
    var val = readStorage("checkbox_" + checkbox);
    settings.checkboxStoredRefs[checkbox] = val ? val : "";
  }
  if (!settings.checkboxStoredRefs[checkbox]) {
    return new Set();
  } else {
    return new Set(settings.checkboxStoredRefs[checkbox].split(",").map(r => convert(r)).filter(a => a >= 0));
  }
}

function getCheckboxState(checkbox, references) {
  var storedRefsSet = getStoredCheckboxRefs(checkbox);
  var currentRefsSet = new Set(references.map(r => r[1]));
  // Get difference of current - stored
  var difference = new Set(currentRefsSet);
  for (ref of storedRefsSet) {
    difference.delete(ref);
  }
  if (difference.size == 0) {
    // All the current refs are stored
    return "checked";
  } else if (difference.size == currentRefsSet.size) {
    // None of the current refs are stored
    return "unchecked";
  } else {
    // Some of the refs are stored
    return "indeterminate";
  }
}

function setBomCheckboxState(checkbox, element, references) {
  var state = getCheckboxState(checkbox, references);
  element.checked = (state == "checked");
  element.indeterminate = (state == "indeterminate");
}

function createCheckboxChangeHandler(checkbox, references, row) {
  return function () {
    refsSet = getStoredCheckboxRefs(checkbox);
    var markWhenChecked = settings.markWhenChecked == checkbox;
    eventArgs = {
      checkbox: checkbox,
      refs: references,
    }
    if (this.checked) {
      // checkbox ticked
      for (var ref of references) {
        refsSet.add(ref[1]);
      }
      if (markWhenChecked) {
        row.classList.add("checked");
        for (var ref of references) {
          markedFootprints.add(ref[1]);
        }
        drawHighlights();
      }
      eventArgs.state = 'checked';
    } else {
      // checkbox unticked
      for (var ref of references) {
        refsSet.delete(ref[1]);
      }
      if (markWhenChecked) {
        row.classList.remove("checked");
        for (var ref of references) {
          markedFootprints.delete(ref[1]);
        }
        drawHighlights();
      }
      eventArgs.state = 'unchecked';
    }
    settings.checkboxStoredRefs[checkbox] = [...refsSet].join(",");
    writeStorage("checkbox_" + checkbox, settings.checkboxStoredRefs[checkbox]);
    updateCheckboxStats(checkbox);
    EventHandler.emitEvent(IBOM_EVENT_TYPES.CHECKBOX_CHANGE_EVENT, eventArgs);
  }
}

function clearHighlightedFootprints() {
  if (currentHighlightedRowId) {
    document.getElementById(currentHighlightedRowId).classList.remove("highlighted");
    currentHighlightedRowId = null;
    highlightedFootprints = [];
    highlightedNet = null;
  }
}

function createRowHighlightHandler(rowid, refs, net) {
  return function () {
    if (currentHighlightedRowId) {
      if (currentHighlightedRowId == rowid) {
        return;
      }
      document.getElementById(currentHighlightedRowId).classList.remove("highlighted");
    }
    document.getElementById(rowid).classList.add("highlighted");
    currentHighlightedRowId = rowid;
    highlightedFootprints = refs ? refs.map(r => r[1]) : [];
    highlightedNet = net;
    drawHighlights();
    EventHandler.emitEvent(
      IBOM_EVENT_TYPES.HIGHLIGHT_EVENT, {
      rowid: rowid,
      refs: refs,
      net: net
    });
  }
}

function entryMatches(entry) {
  if (settings.bommode == "netlist") {
    // entry is just a net name
    return entry.toLowerCase().indexOf(filter) >= 0;
  }
  // check refs
  if (!settings.hiddenColumns.includes("references")) {
    for (var ref of entry) {
      if (ref[0].toLowerCase().indexOf(filter) >= 0) {
        return true;
      }
    }
  }
  // check fields
  for (var i in config.fields) {
    var f = config.fields[i];
    if (!settings.hiddenColumns.includes(f)) {
      for (var ref of entry) {
        if (pcbdata.bom.fields[ref[1]][i].toLowerCase().indexOf(filter) >= 0) {
          return true;
        }
      }
    }
  }
  return false;
}

function findRefInEntry(entry) {
  return entry.filter(r => r[0].toLowerCase() == reflookup);
}

function highlightFilter(s) {
  if (!filter) {
    return s;
  }
  var parts = s.toLowerCase().split(filter);
  if (parts.length == 1) {
    return s;
  }
  var r = "";
  var pos = 0;
  for (var i in parts) {
    if (i > 0) {
      r += '<mark class="highlight">' +
        s.substring(pos, pos + filter.length) +
        '</mark>';
      pos += filter.length;
    }
    r += s.substring(pos, pos + parts[i].length);
    pos += parts[i].length;
  }
  return r;
}

function checkboxSetUnsetAllHandler(checkboxname) {
  return function () {
    var checkboxnum = 0;
    while (checkboxnum < settings.checkboxes.length &&
      settings.checkboxes[checkboxnum].toLowerCase() != checkboxname.toLowerCase()) {
      checkboxnum++;
    }
    if (checkboxnum >= settings.checkboxes.length) {
      return;
    }
    var allset = true;
    var checkbox;
    var row;
    for (row of bombody.childNodes) {
      checkbox = row.childNodes[checkboxnum + 1].childNodes[0];
      if (!checkbox.checked || checkbox.indeterminate) {
        allset = false;
        break;
      }
    }
    for (row of bombody.childNodes) {
      checkbox = row.childNodes[checkboxnum + 1].childNodes[0];
      checkbox.checked = !allset;
      checkbox.indeterminate = false;
      checkbox.onchange();
    }
  }
}

function createColumnHeader(name, cls, comparator, is_checkbox = false) {
  var th = document.createElement("TH");
  th.innerHTML = name;
  th.classList.add(cls);
  if (is_checkbox)
    th.setAttribute("col_name", "bom-checkbox");
  else
    th.setAttribute("col_name", name);
  var span = document.createElement("SPAN");
  span.classList.add("sortmark");
  span.classList.add("none");
  th.appendChild(span);
  var spacer = document.createElement("div");
  spacer.className = "column-spacer";
  th.appendChild(spacer);
  spacer.onclick = function () {
    if (currentSortColumn && th !== currentSortColumn) {
      // Currently sorted by another column
      currentSortColumn.childNodes[1].classList.remove(currentSortOrder);
      currentSortColumn.childNodes[1].classList.add("none");
      currentSortColumn = null;
      currentSortOrder = null;
    }
    if (currentSortColumn && th === currentSortColumn) {
      // Already sorted by this column
      if (currentSortOrder == "asc") {
        // Sort by this column, descending order
        bomSortFunction = function (a, b) {
          return -comparator(a, b);
        }
        currentSortColumn.childNodes[1].classList.remove("asc");
        currentSortColumn.childNodes[1].classList.add("desc");
        currentSortOrder = "desc";
      } else {
        // Unsort
        bomSortFunction = null;
        currentSortColumn.childNodes[1].classList.remove("desc");
        currentSortColumn.childNodes[1].classList.add("none");
        currentSortColumn = null;
        currentSortOrder = null;
      }
    } else {
      // Sort by this column, ascending order
      bomSortFunction = comparator;
      currentSortColumn = th;
      currentSortColumn.childNodes[1].classList.remove("none");
      currentSortColumn.childNodes[1].classList.add("asc");
      currentSortOrder = "asc";
    }
    populateBomBody();
  }
  if (is_checkbox) {
    spacer.onclick = fancyDblClickHandler(
      spacer, spacer.onclick, checkboxSetUnsetAllHandler(name));
  }
  return th;
}

function populateBomHeader(placeHolderColumn = null, placeHolderElements = null) {
  while (bomhead.firstChild) {
    bomhead.removeChild(bomhead.firstChild);
  }
  var tr = document.createElement("TR");
  var th = document.createElement("TH");
  th.classList.add("numCol");

  var vismenu = document.createElement("div");
  vismenu.id = "vismenu";
  vismenu.classList.add("menu");

  var visbutton = document.createElement("div");
  visbutton.classList.add("visbtn");
  visbutton.classList.add("hideonprint");

  var viscontent = document.createElement("div");
  viscontent.classList.add("menu-content");
  viscontent.id = "vismenu-content";

  settings.columnOrder.forEach(column => {
    if (typeof column !== "string")
      return;

    // Skip empty columns
    if (column === "checkboxes" && settings.checkboxes.length == 0)
      return;
    else if (column === "Quantity" && settings.bommode == "ungrouped")
      return;

    var label = document.createElement("label");
    label.classList.add("menu-label");

    var input = document.createElement("input");
    input.classList.add("visibility_checkbox");
    input.type = "checkbox";
    input.onchange = function (e) {
      setShowBOMColumn(column, e.target.checked)
    };
    input.checked = !(settings.hiddenColumns.includes(column));

    label.appendChild(input);
    if (column.length > 0)
      label.append(column[0].toUpperCase() + column.slice(1));

    viscontent.appendChild(label);
  });

  viscontent.childNodes[0].classList.add("menu-label-top");

  vismenu.appendChild(visbutton);
  if (settings.bommode != "netlist") {
    vismenu.appendChild(viscontent);
    th.appendChild(vismenu);
  }
  tr.appendChild(th);

  var checkboxCompareClosure = function (checkbox) {
    return (a, b) => {
      var stateA = getCheckboxState(checkbox, a);
      var stateB = getCheckboxState(checkbox, b);
      if (stateA > stateB) return -1;
      if (stateA < stateB) return 1;
      return 0;
    }
  }
  var stringFieldCompareClosure = function (fieldIndex) {
    return (a, b) => {
      var fa = pcbdata.bom.fields[a[0][1]][fieldIndex];
      var fb = pcbdata.bom.fields[b[0][1]][fieldIndex];
      if (fa != fb) return fa > fb ? 1 : -1;
      else return 0;
    }
  }
  var referenceRegex = /(?<prefix>[^0-9]+)(?<number>[0-9]+)/;
  var compareRefs = (a, b) => {
    var ra = referenceRegex.exec(a);
    var rb = referenceRegex.exec(b);
    if (ra === null || rb === null) {
      if (a != b) return a > b ? 1 : -1;
      return 0;
    } else {
      if (ra.groups.prefix != rb.groups.prefix) {
        return ra.groups.prefix > rb.groups.prefix ? 1 : -1;
      }
      if (ra.groups.number != rb.groups.number) {
        return parseInt(ra.groups.number) > parseInt(rb.groups.number) ? 1 : -1;
      }
      return 0;
    }
  }
  if (settings.bommode == "netlist") {
    th = createColumnHeader("Net name", "bom-netname", (a, b) => {
      if (a > b) return -1;
      if (a < b) return 1;
      return 0;
    });
    tr.appendChild(th);
  } else {
    // Filter hidden columns
    var columns = settings.columnOrder.filter(e => !settings.hiddenColumns.includes(e));
    var valueIndex = config.fields.indexOf("Value");
    var footprintIndex = config.fields.indexOf("Footprint");
    columns.forEach((column) => {
      if (column === placeHolderColumn) {
        var n = 1;
        if (column === "checkboxes")
          n = settings.checkboxes.length;
        for (i = 0; i < n; i++) {
          td = placeHolderElements.shift();
          tr.appendChild(td);
        }
        return;
      } else if (column === "checkboxes") {
        for (var checkbox of settings.checkboxes) {
          th = createColumnHeader(
            checkbox, "bom-checkbox", checkboxCompareClosure(checkbox), true);
          tr.appendChild(th);
        }
      } else if (column === "References") {
        tr.appendChild(createColumnHeader("References", "references", (a, b) => {
          var i = 0;
          while (i < a.length && i < b.length) {
            if (a[i] != b[i]) return compareRefs(a[i][0], b[i][0]);
            i++;
          }
          return a.length - b.length;
        }));
      } else if (column === "Value") {
        tr.appendChild(createColumnHeader("Value", "value", (a, b) => {
          var ra = a[0][1], rb = b[0][1];
          return valueCompare(
            pcbdata.bom.parsedValues[ra], pcbdata.bom.parsedValues[rb],
            pcbdata.bom.fields[ra][valueIndex], pcbdata.bom.fields[rb][valueIndex]);
        }));
        return;
      } else if (column === "Footprint") {
        tr.appendChild(createColumnHeader(
          "Footprint", "footprint", stringFieldCompareClosure(footprintIndex)));
      } else if (column === "Quantity" && settings.bommode == "grouped") {
        tr.appendChild(createColumnHeader("Quantity", "quantity", (a, b) => {
          return a.length - b.length;
        }));
      } else {
        // Other fields
        var i = config.fields.indexOf(column);
        if (i < 0)
          return;
        tr.appendChild(createColumnHeader(
          column, `field${i + 1}`, stringFieldCompareClosure(i)));
      }
    });
  }
  bomhead.appendChild(tr);
}

function populateBomBody(placeholderColumn = null, placeHolderElements = null) {
  while (bom.firstChild) {
    bom.removeChild(bom.firstChild);
  }
  highlightHandlers = [];
  footprintIndexToHandler = {};
  netsToHandler = {};
  currentHighlightedRowId = null;
  var first = true;
  if (settings.bommode == "netlist") {
    bomtable = pcbdata.nets.slice();
  } else {
    switch (settings.canvaslayout) {
      case 'F':
        bomtable = pcbdata.bom.F.slice();
        break;
      case 'FB':
        bomtable = pcbdata.bom.both.slice();
        break;
      case 'B':
        bomtable = pcbdata.bom.B.slice();
        break;
    }
    if (settings.bommode == "ungrouped") {
      // expand bom table
      expandedTable = []
      for (var bomentry of bomtable) {
        for (var ref of bomentry) {
          expandedTable.push([ref]);
        }
      }
      bomtable = expandedTable;
    }
  }
  if (bomSortFunction) {
    bomtable = bomtable.sort(bomSortFunction);
  }
  for (var i in bomtable) {
    var bomentry = bomtable[i];
    if (filter && !entryMatches(bomentry)) {
      continue;
    }
    var references = null;
    var netname = null;
    var tr = document.createElement("TR");
    var td = document.createElement("TD");
    var rownum = +i + 1;
    tr.id = "bomrow" + rownum;
    td.textContent = rownum;
    tr.appendChild(td);
    if (settings.bommode == "netlist") {
      netname = bomentry;
      td = document.createElement("TD");
      td.innerHTML = highlightFilter(netname ? netname : "&lt;no net&gt;");
      tr.appendChild(td);
    } else {
      if (reflookup) {
        references = findRefInEntry(bomentry);
        if (references.length == 0) {
          continue;
        }
      } else {
        references = bomentry;
      }
      // Filter hidden columns
      var columns = settings.columnOrder.filter(e => !settings.hiddenColumns.includes(e));
      columns.forEach((column) => {
        if (column === placeholderColumn) {
          var n = 1;
          if (column === "checkboxes")
            n = settings.checkboxes.length;
          for (i = 0; i < n; i++) {
            td = placeHolderElements.shift();
            tr.appendChild(td);
          }
          return;
        } else if (column === "checkboxes") {
          for (var checkbox of settings.checkboxes) {
            if (checkbox) {
              td = document.createElement("TD");
              var input = document.createElement("input");
              input.type = "checkbox";
              input.onchange = createCheckboxChangeHandler(checkbox, references, tr);
              setBomCheckboxState(checkbox, input, references);
              if (input.checked && settings.markWhenChecked == checkbox) {
                tr.classList.add("checked");
              }
              td.appendChild(input);
              tr.appendChild(td);
            }
          }
        } else if (column === "References") {
          td = document.createElement("TD");
          td.innerHTML = highlightFilter(references.map(r => r[0]).join(", "));
          tr.appendChild(td);
        } else if (column === "Quantity" && settings.bommode == "grouped") {
          // Quantity
          td = document.createElement("TD");
          td.textContent = references.length;
          tr.appendChild(td);
        } else {
          // All the other fields
          var field_index = config.fields.indexOf(column)
          if (field_index < 0)
            return;
          var valueSet = new Set();
          references.map(r => r[1]).forEach((id) => valueSet.add(pcbdata.bom.fields[id][field_index]));
          td = document.createElement("TD");
          td.innerHTML = highlightFilter(Array.from(valueSet).join(", "));
          tr.appendChild(td);
        }
      });
    }
    bom.appendChild(tr);
    var handler = createRowHighlightHandler(tr.id, references, netname);
    tr.onmousemove = handler;
    highlightHandlers.push({
      id: tr.id,
      handler: handler,
    });
    if (references !== null) {
      for (var refIndex of references.map(r => r[1])) {
        footprintIndexToHandler[refIndex] = handler;
      }
    }
    if (netname !== null) {
      netsToHandler[netname] = handler;
    }
    if ((filter || reflookup) && first) {
      handler();
      first = false;
    }
  }
  EventHandler.emitEvent(
    IBOM_EVENT_TYPES.BOM_BODY_CHANGE_EVENT, {
    filter: filter,
    reflookup: reflookup,
    checkboxes: settings.checkboxes,
    bommode: settings.bommode,
  });
}

function highlightPreviousRow() {
  if (!currentHighlightedRowId) {
    highlightHandlers[highlightHandlers.length - 1].handler();
  } else {
    if (highlightHandlers.length > 1 &&
      highlightHandlers[0].id == currentHighlightedRowId) {
      highlightHandlers[highlightHandlers.length - 1].handler();
    } else {
      for (var i = 0; i < highlightHandlers.length - 1; i++) {
        if (highlightHandlers[i + 1].id == currentHighlightedRowId) {
          highlightHandlers[i].handler();
          break;
        }
      }
    }
  }
  smoothScrollToRow(currentHighlightedRowId);
}

function highlightNextRow() {
  if (!currentHighlightedRowId) {
    highlightHandlers[0].handler();
  } else {
    if (highlightHandlers.length > 1 &&
      highlightHandlers[highlightHandlers.length - 1].id == currentHighlightedRowId) {
      highlightHandlers[0].handler();
    } else {
      for (var i = 1; i < highlightHandlers.length; i++) {
        if (highlightHandlers[i - 1].id == currentHighlightedRowId) {
          highlightHandlers[i].handler();
          break;
        }
      }
    }
  }
  smoothScrollToRow(currentHighlightedRowId);
}

function populateBomTable() {
  populateBomHeader();
  populateBomBody();
  setBomHandlers();
  resizableGrid(bomhead);
}

function footprintsClicked(footprintIndexes) {
  var lastClickedIndex = footprintIndexes.indexOf(lastClicked);
  for (var i = 1; i <= footprintIndexes.length; i++) {
    var refIndex = footprintIndexes[(lastClickedIndex + i) % footprintIndexes.length];
    if (refIndex in footprintIndexToHandler) {
      lastClicked = refIndex;
      footprintIndexToHandler[refIndex]();
      smoothScrollToRow(currentHighlightedRowId);
      break;
    }
  }
}

function netClicked(net) {
  if (net in netsToHandler) {
    netsToHandler[net]();
    smoothScrollToRow(currentHighlightedRowId);
  } else {
    clearHighlightedFootprints();
    highlightedNet = net;
    drawHighlights();
  }
}

function updateFilter(input) {
  filter = input.toLowerCase();
  populateBomTable();
}

function updateRefLookup(input) {
  reflookup = input.toLowerCase();
  populateBomTable();
}

function changeCanvasLayout(layout) {
  document.getElementById("fl-btn").classList.remove("depressed");
  document.getElementById("fb-btn").classList.remove("depressed");
  document.getElementById("bl-btn").classList.remove("depressed");
  switch (layout) {
    case 'F':
      document.getElementById("fl-btn").classList.add("depressed");
      if (settings.bomlayout != "bom-only") {
        canvassplit.collapse(1);
      }
      break;
    case 'B':
      document.getElementById("bl-btn").classList.add("depressed");
      if (settings.bomlayout != "bom-only") {
        canvassplit.collapse(0);
      }
      break;
    default:
      document.getElementById("fb-btn").classList.add("depressed");
      if (settings.bomlayout != "bom-only") {
        canvassplit.setSizes([50, 50]);
      }
  }
  settings.canvaslayout = layout;
  writeStorage("canvaslayout", layout);
  resizeAll();
  changeBomMode(settings.bommode);
}

function populateMetadata() {
  document.getElementById("title").innerHTML = pcbdata.metadata.title;
  document.getElementById("revision").innerHTML = "Rev: " + pcbdata.metadata.revision;
  document.getElementById("company").innerHTML = pcbdata.metadata.company;
  document.getElementById("filedate").innerHTML = pcbdata.metadata.date;
  if (pcbdata.metadata.title != "") {
    document.title = pcbdata.metadata.title + " BOM";
  }
  // Calculate board stats
  var fp_f = 0,
    fp_b = 0,
    pads_f = 0,
    pads_b = 0,
    pads_th = 0;
  for (var i = 0; i < pcbdata.footprints.length; i++) {
    if (pcbdata.bom.skipped.includes(i)) continue;
    var mod = pcbdata.footprints[i];
    if (mod.layer == "F") {
      fp_f++;
    } else {
      fp_b++;
    }
    for (var pad of mod.pads) {
      if (pad.type == "th") {
        pads_th++;
      } else {
        if (pad.layers.includes("F")) {
          pads_f++;
        }
        if (pad.layers.includes("B")) {
          pads_b++;
        }
      }
    }
  }
  document.getElementById("stats-components-front").innerHTML = fp_f;
  document.getElementById("stats-components-back").innerHTML = fp_b;
  document.getElementById("stats-components-total").innerHTML = fp_f + fp_b;
  document.getElementById("stats-groups-front").innerHTML = pcbdata.bom.F.length;
  document.getElementById("stats-groups-back").innerHTML = pcbdata.bom.B.length;
  document.getElementById("stats-groups-total").innerHTML = pcbdata.bom.both.length;
  document.getElementById("stats-smd-pads-front").innerHTML = pads_f;
  document.getElementById("stats-smd-pads-back").innerHTML = pads_b;
  document.getElementById("stats-smd-pads-total").innerHTML = pads_f + pads_b;
  document.getElementById("stats-th-pads").innerHTML = pads_th;
  // Update version string
  document.getElementById("github-link").innerHTML = "InteractiveHtmlBom&nbsp;" +
    /^v\d+\.\d+/.exec(pcbdata.ibom_version)[0];
}

function changeBomLayout(layout) {
  document.getElementById("bom-btn").classList.remove("depressed");
  document.getElementById("lr-btn").classList.remove("depressed");
  document.getElementById("tb-btn").classList.remove("depressed");
  switch (layout) {
    case 'bom-only':
      document.getElementById("bom-btn").classList.add("depressed");
      if (bomsplit) {
        bomsplit.destroy();
        bomsplit = null;
        canvassplit.destroy();
        canvassplit = null;
      }
      document.getElementById("frontcanvas").style.display = "none";
      document.getElementById("backcanvas").style.display = "none";
      document.getElementById("bot").style.height = "";
      break;
    case 'top-bottom':
      document.getElementById("tb-btn").classList.add("depressed");
      document.getElementById("frontcanvas").style.display = "";
      document.getElementById("backcanvas").style.display = "";
      document.getElementById("bot").style.height = "calc(100% - 80px)";
      document.getElementById("bomdiv").classList.remove("split-horizontal");
      document.getElementById("canvasdiv").classList.remove("split-horizontal");
      document.getElementById("frontcanvas").classList.add("split-horizontal");
      document.getElementById("backcanvas").classList.add("split-horizontal");
      if (bomsplit) {
        bomsplit.destroy();
        bomsplit = null;
        canvassplit.destroy();
        canvassplit = null;
      }
      bomsplit = Split(['#bomdiv', '#canvasdiv'], {
        sizes: [50, 50],
        onDragEnd: resizeAll,
        direction: "vertical",
        gutterSize: 5
      });
      canvassplit = Split(['#frontcanvas', '#backcanvas'], {
        sizes: [50, 50],
        gutterSize: 5,
        onDragEnd: resizeAll
      });
      break;
    case 'left-right':
      document.getElementById("lr-btn").classList.add("depressed");
      document.getElementById("frontcanvas").style.display = "";
      document.getElementById("backcanvas").style.display = "";
      document.getElementById("bot").style.height = "calc(100% - 80px)";
      document.getElementById("bomdiv").classList.add("split-horizontal");
      document.getElementById("canvasdiv").classList.add("split-horizontal");
      document.getElementById("frontcanvas").classList.remove("split-horizontal");
      document.getElementById("backcanvas").classList.remove("split-horizontal");
      if (bomsplit) {
        bomsplit.destroy();
        bomsplit = null;
        canvassplit.destroy();
        canvassplit = null;
      }
      bomsplit = Split(['#bomdiv', '#canvasdiv'], {
        sizes: [50, 50],
        onDragEnd: resizeAll,
        gutterSize: 5
      });
      canvassplit = Split(['#frontcanvas', '#backcanvas'], {
        sizes: [50, 50],
        gutterSize: 5,
        direction: "vertical",
        onDragEnd: resizeAll
      });
  }
  settings.bomlayout = layout;
  writeStorage("bomlayout", layout);
  changeCanvasLayout(settings.canvaslayout);
}

function changeBomMode(mode) {
  document.getElementById("bom-grouped-btn").classList.remove("depressed");
  document.getElementById("bom-ungrouped-btn").classList.remove("depressed");
  document.getElementById("bom-netlist-btn").classList.remove("depressed");
  var chkbxs = document.getElementsByClassName("visibility_checkbox");

  switch (mode) {
    case 'grouped':
      document.getElementById("bom-grouped-btn").classList.add("depressed");
      for (var i = 0; i < chkbxs.length; i++) {
        chkbxs[i].disabled = false;
      }
      break;
    case 'ungrouped':
      document.getElementById("bom-ungrouped-btn").classList.add("depressed");
      for (var i = 0; i < chkbxs.length; i++) {
        chkbxs[i].disabled = false;
      }
      break;
    case 'netlist':
      document.getElementById("bom-netlist-btn").classList.add("depressed");
      for (var i = 0; i < chkbxs.length; i++) {
        chkbxs[i].disabled = true;
      }
  }

  writeStorage("bommode", mode);
  if (mode != settings.bommode) {
    settings.bommode = mode;
    bomSortFunction = null;
    currentSortColumn = null;
    currentSortOrder = null;
    clearHighlightedFootprints();
  }
  populateBomTable();
}

function focusFilterField() {
  focusInputField(document.getElementById("filter"));
}

function focusRefLookupField() {
  focusInputField(document.getElementById("reflookup"));
}

function toggleBomCheckbox(bomrowid, checkboxnum) {
  if (!bomrowid || checkboxnum > settings.checkboxes.length) {
    return;
  }
  var bomrow = document.getElementById(bomrowid);
  var checkbox = bomrow.childNodes[checkboxnum].childNodes[0];
  checkbox.checked = !checkbox.checked;
  checkbox.indeterminate = false;
  checkbox.onchange();
}

function checkBomCheckbox(bomrowid, checkboxname) {
  var checkboxnum = 0;
  while (checkboxnum < settings.checkboxes.length &&
    settings.checkboxes[checkboxnum].toLowerCase() != checkboxname.toLowerCase()) {
    checkboxnum++;
  }
  if (!bomrowid || checkboxnum >= settings.checkboxes.length) {
    return;
  }
  var bomrow = document.getElementById(bomrowid);
  var checkbox = bomrow.childNodes[checkboxnum + 1].childNodes[0];
  checkbox.checked = true;
  checkbox.indeterminate = false;
  checkbox.onchange();
}

function setBomCheckboxes(value) {
  writeStorage("bomCheckboxes", value);
  settings.checkboxes = value.split(",").map((e) => e.trim()).filter((e) => e);
  prepCheckboxes();
  populateMarkWhenCheckedOptions();
  setMarkWhenChecked(settings.markWhenChecked);
}

function setMarkWhenChecked(value) {
  writeStorage("markWhenChecked", value);
  settings.markWhenChecked = value;
  markedFootprints.clear();
  for (var ref of (value ? getStoredCheckboxRefs(value) : [])) {
    markedFootprints.add(ref);
  }
  populateBomTable();
  drawHighlights();
}

function prepCheckboxes() {
  var table = document.getElementById("checkbox-stats");
  while (table.childElementCount > 1) {
    table.removeChild(table.lastChild);
  }
  if (settings.checkboxes.length) {
    table.style.display = "";
  } else {
    table.style.display = "none";
  }
  for (var checkbox of settings.checkboxes) {
    var tr = document.createElement("TR");
    var td = document.createElement("TD");
    td.innerHTML = checkbox;
    tr.appendChild(td);
    td = document.createElement("TD");
    td.id = "checkbox-stats-" + checkbox;
    var progressbar = document.createElement("div");
    progressbar.classList.add("bar");
    td.appendChild(progressbar);
    var text = document.createElement("div");
    text.classList.add("text");
    td.appendChild(text);
    tr.appendChild(td);
    table.appendChild(tr);
    updateCheckboxStats(checkbox);
  }
}

function populateMarkWhenCheckedOptions() {
  var container = document.getElementById("markWhenCheckedContainer");

  if (settings.checkboxes.length == 0) {
    container.parentElement.style.display = "none";
    return;
  }

  container.innerHTML = '';
  container.parentElement.style.display = "inline-block";

  function createOption(name, displayName) {
    var id = "markWhenChecked-" + name;

    var div = document.createElement("div");
    div.classList.add("radio-container");

    var input = document.createElement("input");
    input.type = "radio";
    input.name = "markWhenChecked";
    input.value = name;
    input.id = id;
    input.onchange = () => setMarkWhenChecked(name);
    div.appendChild(input);

    // Preserve the selected element when the checkboxes change
    if (name == settings.markWhenChecked) {
      input.checked = true;
    }

    var label = document.createElement("label");
    label.innerHTML = displayName;
    label.htmlFor = id;
    div.appendChild(label);

    container.appendChild(div);
  }
  createOption("", "None");
  for (var checkbox of settings.checkboxes) {
    createOption(checkbox, checkbox);
  }
}

function updateCheckboxStats(checkbox) {
  var checked = getStoredCheckboxRefs(checkbox).size;
  var total = pcbdata.footprints.length - pcbdata.bom.skipped.length;
  var percent = checked * 100.0 / total;
  var td = document.getElementById("checkbox-stats-" + checkbox);
  td.firstChild.style.width = percent + "%";
  td.lastChild.innerHTML = checked + "/" + total + " (" + Math.round(percent) + "%)";
}

document.onkeydown = function (e) {
  switch (e.key) {
    case "n":
      if (document.activeElement.type == "text") {
        return;
      }
      if (currentHighlightedRowId !== null) {
        checkBomCheckbox(currentHighlightedRowId, "placed");
        highlightNextRow();
        e.preventDefault();
      }
      break;
    case "ArrowUp":
      highlightPreviousRow();
      e.preventDefault();
      break;
    case "ArrowDown":
      highlightNextRow();
      e.preventDefault();
      break;
    default:
      break;
  }
  if (e.altKey) {
    switch (e.key) {
      case "f":
        focusFilterField();
        e.preventDefault();
        break;
      case "r":
        focusRefLookupField();
        e.preventDefault();
        break;
      case "z":
        changeBomLayout("bom-only");
        e.preventDefault();
        break;
      case "x":
        changeBomLayout("left-right");
        e.preventDefault();
        break;
      case "c":
        changeBomLayout("top-bottom");
        e.preventDefault();
        break;
      case "v":
        changeCanvasLayout("F");
        e.preventDefault();
        break;
      case "b":
        changeCanvasLayout("FB");
        e.preventDefault();
        break;
      case "n":
        changeCanvasLayout("B");
        e.preventDefault();
        break;
      default:
        break;
    }
    if (e.key >= '1' && e.key <= '9') {
      toggleBomCheckbox(currentHighlightedRowId, parseInt(e.key));
      e.preventDefault();
    }
  }
}

function hideNetlistButton() {
  document.getElementById("bom-ungrouped-btn").classList.remove("middle-button");
  document.getElementById("bom-ungrouped-btn").classList.add("right-most-button");
  document.getElementById("bom-netlist-btn").style.display = "none";
}

window.onload = function (e) {
  initUtils();
  initRender();
  initStorage();
  initDefaults();
  cleanGutters();
  populateMetadata();
  dbgdiv = document.getElementById("dbg");
  bom = document.getElementById("bombody");
  bomhead = document.getElementById("bomhead");
  filter = "";
  reflookup = "";
  if (!("nets" in pcbdata)) {
    hideNetlistButton();
  }
  initDone = true;
  setBomCheckboxes(document.getElementById("bomCheckboxes").value);
  // Triggers render
  changeBomLayout(settings.bomlayout);

  // Users may leave fullscreen without touching the checkbox. Uncheck.
  document.addEventListener('fullscreenchange', () => {
    if (!document.fullscreenElement)
      document.getElementById('fullscreenCheckbox').checked = false;
  });
}

window.onresize = resizeAll;
window.matchMedia("print").addListener(resizeAll);

///////////////////////////////////////////////

///////////////////////////////////////////////

///////////////////////////////////////////////
  </script>
</head>

<body>

<div id="topmostdiv" class="topmostdiv">
  <div id="top">
    <div style="float: right; height: 100%;">
      <div class="hideonprint menu" style="float: right; top: 8px;">
        <button class="menubtn"></button>
        <div class="menu-content">
          <label class="menu-label menu-label-top" style="width: calc(50% - 18px)">
            <input id="darkmodeCheckbox" type="checkbox" onchange="setDarkMode(this.checked)">
            Dark mode
          </label><!-- This comment eats space! All of it!
          --><label class="menu-label menu-label-top" style="width: calc(50% - 17px); border-left: 0;">
            <input id="fullscreenCheckbox" type="checkbox" onchange="setFullscreen(this.checked)">
            Full Screen
          </label>
          <label class="menu-label" style="width: calc(50% - 18px)">
            <input id="fabricationCheckbox" type="checkbox" checked onchange="fabricationVisible(this.checked)">
            Fab layer
          </label><!-- This comment eats space! All of it!
          --><label class="menu-label" style="width: calc(50% - 17px); border-left: 0;">
            <input id="silkscreenCheckbox" type="checkbox" checked onchange="silkscreenVisible(this.checked)">
            Silkscreen
          </label>
          <label class="menu-label" style="width: calc(50% - 18px)">
            <input id="referencesCheckbox" type="checkbox" checked onchange="referencesVisible(this.checked)">
            References
          </label><!-- This comment eats space! All of it!
          --><label class="menu-label" style="width: calc(50% - 17px); border-left: 0;">
            <input id="valuesCheckbox" type="checkbox" checked onchange="valuesVisible(this.checked)">
            Values
          </label>
          <div id="tracksAndZonesCheckboxes">
            <label class="menu-label" style="width: calc(50% - 18px)">
              <input id="tracksCheckbox" type="checkbox" checked onchange="tracksVisible(this.checked)">
              Tracks
            </label><!-- This comment eats space! All of it!
            --><label class="menu-label" style="width: calc(50% - 17px); border-left: 0;">
              <input id="zonesCheckbox" type="checkbox" checked onchange="zonesVisible(this.checked)">
              Zones
            </label>
          </div>
          <label class="menu-label" style="width: calc(50% - 18px)">
            <input id="padsCheckbox" type="checkbox" checked onchange="padsVisible(this.checked)">
            Pads
          </label><!-- This comment eats space! All of it!
          --><label class="menu-label" style="width: calc(50% - 17px); border-left: 0;">
            <input id="dnpOutlineCheckbox" type="checkbox" checked onchange="dnpOutline(this.checked)">
            DNP outlined
          </label>
          <label class="menu-label">
            <input id="highlightpin1Checkbox" type="checkbox" onchange="setHighlightPin1(this.checked)">
            Highlight first pin
          </label>
          <label class="menu-label">
            <input id="dragCheckbox" type="checkbox" checked onchange="setRedrawOnDrag(this.checked)">
            Continuous redraw on drag
          </label>
          <label class="menu-label">
            <span>Board rotation</span>
            <span style="float: right"><span id="rotationDegree">0</span>&#176;</span>
            <input id="boardRotation" type="range" min="-36" max="36" value="0" class="slider" oninput="setBoardRotation(this.value)">
          </label>
          <label class="menu-label">
            <div style="margin-left: 5px">Bom checkboxes</div>
            <input id="bomCheckboxes" class="menu-textbox" type=text
                   oninput="setBomCheckboxes(this.value)">
          </label>
          <label class="menu-label">
            <div style="margin-left: 5px">Mark when checked</div>
            <div id="markWhenCheckedContainer"></div>
          </label>
          <label class="menu-label">
            <span class="shameless-plug">
              <span>Created using</span>
              <a id="github-link" target="blank" href="https://github.com/openscopeproject/InteractiveHtmlBom">InteractiveHtmlBom</a>
            </span>
          </label>
        </div>
      </div>
      <div class="button-container hideonprint"
           style="float: right; position: relative; top: 8px">
        <button id="fl-btn" class="left-most-button" onclick="changeCanvasLayout('F')"
                title="Front only">F
        </button>
        <button id="fb-btn" class="middle-button" onclick="changeCanvasLayout('FB')"
                title="Front and Back">FB
        </button>
        <button id="bl-btn" class="right-most-button" onclick="changeCanvasLayout('B')"
                title="Back only">B
        </button>
      </div>
      <div class="button-container hideonprint"
           style="float: right; position: relative; top: 8px">
        <button id="bom-btn" class="left-most-button" onclick="changeBomLayout('bom-only')"
                title="BOM only"></button>
        <button id="lr-btn" class="middle-button" onclick="changeBomLayout('left-right')"
                title="BOM left, drawings right"></button>
        <button id="tb-btn" class="right-most-button" onclick="changeBomLayout('top-bottom')"
                title="BOM top, drawings bot"></button>
      </div>
      <div class="button-container hideonprint"
           style="float: right; position: relative; top: 8px">
        <button id="bom-grouped-btn" class="left-most-button" onclick="changeBomMode('grouped')"
                title="Grouped BOM"></button>
        <button id="bom-ungrouped-btn" class="middle-button" onclick="changeBomMode('ungrouped')"
                title="Ungrouped BOM"></button>
        <button id="bom-netlist-btn" class="right-most-button" onclick="changeBomMode('netlist')"
                title="Netlist"></button>
      </div>
      <div class="hideonprint menu" style="float: right; top: 8px;">
        <button class="statsbtn"></button>
        <div class="menu-content">
          <table class="stats">
            <tbody>
              <tr>
                <td width="40%">Board stats</td>
                <td>Front</td>
                <td>Back</td>
                <td>Total</td>
              </tr>
              <tr>
                <td>Components</td>
                <td id="stats-components-front">~</td>
                <td id="stats-components-back">~</td>
                <td id="stats-components-total">~</td>
              </tr>
              <tr>
                <td>Groups</td>
                <td id="stats-groups-front">~</td>
                <td id="stats-groups-back">~</td>
                <td id="stats-groups-total">~</td>
              </tr>
              <tr>
                <td>SMD pads</td>
                <td id="stats-smd-pads-front">~</td>
                <td id="stats-smd-pads-back">~</td>
                <td id="stats-smd-pads-total">~</td>
              </tr>
              <tr>
                <td>TH pads</td>
                <td colspan=3 id="stats-th-pads">~</td>
              </tr>
            </tbody>
          </table>
          <table class="stats">
            <col width="40%"/><col />
            <tbody id="checkbox-stats">
              <tr>
                <td colspan=2 style="border-top: 0">Checkboxes</td>
              </tr>
            </tbody>
          </table>
        </div>
      </div>
      <div class="hideonprint menu" style="float: right; top: 8px;">
        <button class="iobtn"></button>
        <div class="menu-content">
          <div class="menu-label menu-label-top">
            <div style="margin-left: 5px;">Save board image</div>
            <div class="flexbox">
              <input id="render-save-width" class="menu-textbox" type="text" value="1000" placeholder="Width"
                  style="flex-grow: 1; width: 50px;" oninput="validateSaveImgDimension(this)">
              <span>X</span>
              <input id="render-save-height" class="menu-textbox" type="text" value="1000" placeholder="Height"
                  style="flex-grow: 1; width: 50px;" oninput="validateSaveImgDimension(this)">
            </div>
            <label>
              <input id="render-save-transparent" type="checkbox">
              Transparent background
            </label>
            <div class="flexbox">
              <button class="savebtn" onclick="saveImage('F')">Front</button>
              <button class="savebtn" onclick="saveImage('B')">Back</button>
            </div>
          </div>
          <div class="menu-label">
            <span style="margin-left: 5px;">Config and checkbox state</span>
            <div class="flexbox">
              <button class="savebtn" onclick="saveSettings()">Export</button>
              <button class="savebtn" onclick="loadSettings()">Import</button>
            </div>
          </div>
        </div>
      </div>
    </div>
    <div id="fileinfodiv" style="overflow: auto;">
      <table class="fileinfo">
        <tbody>
          <tr>
            <td id="title" class="title" style="width: 70%">
              Title
            </td>
            <td id="revision" class="title" style="width: 30%">
              Revision
            </td>
          </tr>
          <tr>
            <td id="company">
              Company
            </td>
            <td id="filedate">
              Date
            </td>
          </tr>
        </tbody>
      </table>
    </div>
  </div>
  <div id="bot" class="split" style="height: calc(100% - 80px)">
    <div id="bomdiv" class="split split-horizontal">
      <div style="width: 100%">
        <input id="reflookup" class="textbox searchbox reflookup hideonprint" type="text" placeholder="Ref lookup"
               oninput="updateRefLookup(this.value)">
        <input id="filter" class="textbox searchbox filter hideonprint" type="text" placeholder="Filter"
               oninput="updateFilter(this.value)">
        <div class="button-container hideonprint" style="float: left; margin: 0;">
          <button id="copy" title="Copy bom table to clipboard"
               onclick="copyToClipboard()"></button>
        </div>
      </div>
      <div id="dbg"></div>
      <table class="bom" id="bomtable">
        <thead id="bomhead">
        </thead>
        <tbody id="bombody">
        </tbody>
      </table>
    </div>
    <div id="canvasdiv" class="split split-horizontal">
      <div id="frontcanvas" class="split" touch-action="none" style="overflow: hidden">
        <div style="position: relative; width: 100%; height: 100%;">
          <canvas id="F_bg" style="position: absolute; left: 0; top: 0; z-index: 0;"></canvas>
          <canvas id="F_fab" style="position: absolute; left: 0; top: 0; z-index: 1;"></canvas>
          <canvas id="F_slk" style="position: absolute; left: 0; top: 0; z-index: 2;"></canvas>
          <canvas id="F_hl" style="position: absolute; left: 0; top: 0; z-index: 3;"></canvas>
        </div>
      </div>
      <div id="backcanvas" class="split" touch-action="none" style="overflow: hidden">
        <div style="position: relative; width: 100%; height: 100%;">
          <canvas id="B_bg" style="position: absolute; left: 0; top: 0; z-index: 0;"></canvas>
          <canvas id="B_fab" style="position: absolute; left: 0; top: 0; z-index: 1;"></canvas>
          <canvas id="B_slk" style="position: absolute; left: 0; top: 0; z-index: 2;"></canvas>
          <canvas id="B_hl" style="position: absolute; left: 0; top: 0; z-index: 3;"></canvas>
        </div>
      </div>
    </div>
  </div>
</div>

</body>

</html>
